这一节我学习java语言中的流程控制语句之中的判断语句.
首先我们看看if语句的不同格式
看下面的代码
~~~
class IfDemo
{
public static void main(String[] args)
{
//判断语句
/**************************************
if语句的第一种格式:
if(条件表达式)
{
执行语句;
}
*/
int x = 3;
if(x > 1)
{//如果没有大括号,if就只能控制离它最近的那条语句
System.out.println("yes");
}
/**************************************
if语句的第二种格式:
if(条件表达式)
{
执行语句;
}
else//否则
{
执行语句;
}
*/
if(x > 1)
{
System.out.println("yes");
}
else
{
System.out.println("no");
}
int a = 3,b;
if(a>1)
b = 100;
else
b = 200;
//b = a>1?100:200;
//三元运算符就是if else的语句简写格式.
//简写格式什么时候用?
//当if else运算后有一个具体结果时,可以简化写成三元运算符.
System.out.println("b="+b);
/*****************************************
if语句的第三种格式:
if(条件表达式)
{
执行语句;
}
else if(条件表达式)
{
执行语句;
}
......
else
{
执行语句;
}
只有一个代码块被执行
*/
}
}
~~~
从上面的代码我们看到了三种不同格式的if语句,看到了三元运算符就是if else的语句简写格式.并且是当if else运算有一个具体结果时可以互用.
我们再看一下代码块的作用吧
~~~
public static void main(String[] args)
{
int m = 89;//两个打印都打印
/*
局部代码块可以定义局部变量的生命同期。
*/
{//局部代码块
int n = 89;//n的作用域是这个代码块
System.out.println(m);
System.out.println(n);
}
System.out.println(m);
System.out.println(n);//提示找不到变量n,这就说明n的作用域就是上面的代码块
}
~~~
结果:
![](https://box.kancloud.cn/2016-05-18_573c4171010b1.jpg)
从结果看到了代码块中变量出了代码块就已经被释放掉了,也就是说代码块中定义的局部变量的作用域就是代码块.
最后我们看一个if语句的小例子.
~~~
class IfTest2
{
public static void main(String[] args)
{
/*
一年有四季。
春季:3 4 5
夏季:6 7 8
秋季:9 10 11
冬季:12 1 2
根据用户输入的月份,给出对应的季节。
*/
int month=12;
if(month<1 || month>12)
System.out.println(month+"月没有对应的季节");
else if(month>=3 && month<=5)
System.out.println(month+"月是春季");
else if(month>=6 && month<=8)
System.out.println(month+"月是夏季");
else if(month>=9 && month<=11)
System.out.println(month+"月是秋季");
else
System.out.println(month+"月是冬季");
if(month==3||month==4||month==5)
System.out.println(month+"月是春季");
else if(month==6||month==7||month==8)
System.out.println(month+"月是夏季");
else if(month==9||month==10||month==11)
System.out.println(month+"月是秋季");
else if(month==12||month==1||month==2)
System.out.println(month+"月是冬季");
else
System.out.println(month+"月没有对就的季节");
}
}
~~~
输出结果两个都是冬季.
- 前言
- 1.1 基本常识
- 1.2 Java语言概述
- 1.3 Java语言的环境搭建
- 1.4 Java程序开发之初体验--Hello World
- 2.1 关键字
- 2.2 标识符
- 2.3 注释
- 2.4 常量
- 2.5 进制扫盲
- 2.6 变量和数据类型(1)
- 2.7 变量和数据类型(2)
- 2.8 运算符
- 3.1 if语句
- 3.2 switch语句
- 3.3 while和do-while语句
- 3.4 for语句
- 3.5 for循环的嵌套
- 3.6 break语句与continue语句
- 4.1 函数的定义
- 4.2 定义函数的两个明确
- 4.3 函数的内存加载过程
- 4.4 函数的重载
- 5.1 数组的定义
- 5.2 数组的内存分配及特点
- 5.3 数组操作中常见问题
- 5.4 数组常用操作(1)
- 5.5 数组常用操作(2)
- 5.6 二维数组
- 6.1 面向对象的概述
- 6.2 类与对象的关系
- 6.3 对象的内存体现
- 6.4 成员变量与局部变量
- 6.5 类类型参数与匿名对象
- 6.6 基本数据类型参数与引用数据类型参数的传递过程
- 6.7 封装
- 7.1 构造函数概述与默认构造函数
- 7.2 构造函数与一般函数的区别
- 7.3 构造函数的重载
- 7.4 构造函数的内存加载
- 7.5 构造函数需要注意的几个细节
- 7.6 this关键字的原理
- 7.7 this关键字的细节与应用
- 8.1 static关键字之特点
- 8.2 成员变量与静态变量的区别
- 8.3 static关键字使用的注意细节
- 8.4 main函数的解析与细节
- 8.5 static关键字的使用场景
- 8.6 静态的内存加载
- 8.7 静态代码块
- 8.8 构造代码块
- 9.1 继承
- 9.2 单继承与多重继承
- 9.3 子父类中成员变量特征体现