D2 语句部分

2.6 程序流程控制
判断结构
选择结构
循环结构

2.6.1判断结构
class IfDemo
{
public static void main (String[] args)
{
intx=3;
if(x>1)
{
System.out.println(“Hello World!”);

}

}
注:if else结构 简写格式: 变量=(条件表达式)?表达式1:表达式2;
三元运算符:
好处:可以检查 if else 代码
弊端:因为是一个运算符,所以运算完必须要有一个结果

if练习:
class IfDemo
{
public static void main (String[] args)
{
//根据用户定义的数值不同,打印对应的星期英文。
int num=2;
if (num==1)
System.out.println(“”);
else if (num==2)
System.out.println(“”);

else
System.out.println(“the wrong number”);
//需求:根据用户指定的月份,打印该月份所属的季节。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(x+”春季”);
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(“月份不存在”);
//现在有一个问题是,用区间表示三个或对于前几个是可以的,但是对于12、1、2月份怎么办?
//换一种思路,把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(“冬天”);

}

2.6.2 选择结构
switch语句
格式:
switch(表达式) //byte short int char,一般都是int 和 char
{
case 取值1:
执行语句;
break; //跳出switch 语句

default:
执行语句;
break; //可以省略

}
注意,switch的执行从第一个具体的case开始执行,所有case都不是,才会执行default.
switch什么时候执行完呢?碰到braek或者大括号才行。
E.g.
这里写图片描述
先从case4开始,不符合;case 6 ,不符合;case 2 ,不符合;default,输出d。此时switch并没有结束(因为既没有碰到break ,也没有碰到大括号),此时,它会继续向下执行 ,而不判断case!!
把下面所有能执行的语句全部执行完,直到碰到break 或者碰到大括号为止。
所以本题,会输出 d、a、b,碰到break,over

练习:
class IfDemo
{
public static void main (String[] args)
{
int x=4;
switch(x)
{
case3:
case4:
case5:
System.out.println(“春天”); //执行同样的东西就可以写一起
break;

default :
System.out.println(“nono”);

}
注:
具体什么场景下应用哪种语句呢?
如果判断的具体数值不多,而且符合byte/int/short/char的数据类型,虽然两个语句都可以使用,建议使用switch,因为效率较高。
其他情况:区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。

                                   2018.5.25
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值