------- android培训、java培训、期待与您交流! ----------
一.
顺序结构,如下代码所示:
package circulate;
public class IfDemo {
public static void main(String[] args)
{
System.out.println("Hello World");
System.out.println("Hello World");
System.out.println("Hello World");
System.out.println("Hello World");
}
}
二.
注意:
如果if控制的语句只有一条,那么"{ "可以不写.
if...else语句和三元运算符的区别(代码演示):
三元运算符:
int a = 9,b;
b=(a>1)?100:200;
用if...else表达就是:
if(a>1)
b=100;
else
b=200;
小结:这里写成三元运算符更加简便。
像下面的代码是不能写成三元运算符的:
int x = 1;
if (x > 1)
{
System.out.println("yes");
}
else
{
System.out.println("a");
}
如果写成三元运算符就是:b=(x>1)?System.out.println("yes"):System.out.println("a");
这样子那肯定不行,因为System.out.println("yes")是直接打印到屏幕上的。
三.
if...else结构的简写格式:变量=(条件表达式)?表达式1:表达式2;
if...else的代码演示:
int n=3;
if(n>1)
System.out.println("a");
else if(n>2)
System.out.println("b");
else if(n>2)
System.out.println("c");
else
System.out.println("d");
}
以上代码打印结果为a,因为当n=3时执行第一个语句时满足了,他就不会往后执行了,所以打印结果为a.
三元运算符的特点:可以简化if...else代码,弊端就是因为是一个运算符,所以
运算完必须要有一个结果。
以下代码中 if(n>1)
System.out.println("a");和
if(n>2)
System.out.println("b");是独立的。
if(n>1)
System.out.println("a");
if(n>2)
System.out.println("b");
if(n>3)
System.out.println("c");
else
System.out.println("d");
练习:根据用户指定的月份,打印该月份所属的季节
分析:
//3,4,5春 6,7,8夏 9,10,11秋 12,1,2东
int x = 4;
if(x==3||x==4||x==5)
System.out.println("春季");
else if(x==6||x==7||x==8)
System.out.println("夏季");
else if(x==9||x==10||x==11)
System.out.println("秋季");
else if(x==12||x==1||x==2)
System.out.println("冬季");
else
System.out.println("月份不存在");
}
如果if(x==3||x==4||x==5)中的(x==3||x==4||x==5)可以表示为(x>=3&&x<=5),
那么else if(x==12||x==1||x==2)中的(x==12||x==1||x==2)怎样这样表示呢?
方法是把1-12以外的数全部判断出来,然后我再判断1-12里面的数:
if(x>12||x<1)
System.out.println("月份不存在");
else if(x>=3&&x<=5)
System.out.println("春季");
else if(x>=6&&x<=8)
System.out.println("夏季");
else if(x>=9&&x<=11)
System.out.println("秋季");
else
System.out.println("冬季");
}
四.
switch语句
格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
.....
default:
执行语句;
break;
}
当case不对的话,他就往下执行,如果判断所有的都不对的话,那就是默认即执行default:
执行语句;
break;
特点:
1.switch语句选择的类型只有四种:byte,short,int,char.
2.case之间与default没有顺序,先执行第一个case,没有匹配的case执行default.
3.结束switch语句的两种情况:遇到break,执行到switch语句结束
4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的
语句,直到遇到break或者switch的结尾结束。
小结:
if和switch语句很像,具体什么场景下应用哪个语句呢?如果判断的具体数值不多,而是符合byte
short int ,char这四种类型,虽然两个语句都可以使用,建议使用switch语句,因为
效率稍高,其他情况,对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广