选择语句入门基础

选择结构语句
选择结构:也被称为分支结构。选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,
所以产生选择,按照不同的选择执行不同的代码。Java语言提供了两种选择结构语句:if语句和switch语句
一、if语句       if语句有三种语法格式。
(1)、if语句第一种语法格式(适合一种判断)
if(条件表达式){
    语句体;
}
执行流程:判断条件表达式的结果,当为true时,{}中的执行语句体才会执行,否则不执行语句体。

注意:
条件表达式的结果必须是布尔类型;if如果控制的语句只有一条,可以不写中括号{},直接跟语句体,但如果跟多条语句,大括号不能省略,
建议两种情况下都写。
代码示例演示:
[Java] 纯文本查看 复制代码
?
1
2
3
4
5
6
1.//if语句第一种语法格式 
        int i=6
        if(i%2==0){ 
            System.out.println("if条件为true"); 
       
        System.out.println("over");
(2)、if语句第二种语法格式(适合两种判断)
if(条件表达式){
   语句体1;
}else{
   语句体2;
}
执行流程:同样先判断条件表达式的结果,如果为true,则执行语句体1,为false则执行语句体2.





代码演示:

[Java] 纯文本查看 复制代码
?
1
2
3
4
5
6
7
8
//if语句第二种语法格式 
       int j=-2
        if(j>0){ 
           System.out.println(j+"为正数"); 
        }else
            System.out.println(j+"为负数"); 
        
        System.out.println("over");

 

(3)、if语句第三种语法格式(适合多种判断)
if(条件表达式1){
语句体1;
}else if(条件表达式2){
语句体2;
}
...
else if(条件表达式n){
语句体n;
}else{
语句体n+1;
}
执行流程:首先判断条件表达式1的结果,如果为true,则执行语句体1,为false则继续判断条件表达式2的结果,如果为true,则执行语句体2,
为false则继续判断下一个条件表达式的结果,以此类推,如果所有的判断条件都为false,则意味着所有的条件均未得到满足,则执行语句体n+1。





代码演示:

[Java]  纯文本查看  复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
[/size][/font]
[font=微软雅黑][size= 3 ] // if语句第三种语法格式  [/size][/font]
[font=微软雅黑][size= 3 ] int scores = 88
if (scores >= 90 ) { 
      System.out.println( "您的成绩被评定为A级" ); 
} else if (scores >= 80 ) { 
      System.out.println( "您的成绩被评定为B级" ); 
} else if (scores >= 70 ) { 
       System.out.println( "您的成绩被评定为C级" ); 
} else if (scores >= 60 ) { 
       System.out.println( "您的成绩被评定为D级" ); 
  } else if (scores >= 0 ) { 
       System.out.println( "您的成绩被评定为E级" ); 
} else
       System.out.println( "成绩输入有误!!!" ); 
}


二、switch语句
switch语句的语法格式:
switch(表达式){
   case 目标值1:
       执行语句1;
       break;
   case 目标值2:
       执行语句2;
       break;
       ......
   case 目标值n:
        执行语句n;
       break;
   default:
       执行语句n+1;
       break;
}

执行流程:switch语句将表达式的值与每个case中的目标值进行匹配,如果找到了匹配的值,会执行对应的case后的语句,遇到break就会结束。
如果没找到任何匹配的值,就会执行default后的语句,然后程序结束。



注意:
(1)、表达式接收的值类型:在switch语句中的表达式只能是byte、short、char、int类型的值,如果传入其他类型的值,程序就会报错。
(JDK5.0引入enum枚举和JDK7.0接收String类型)。
(2)、case后面跟的是要和表达式进行比较的值,语句体部分可以是一条或多条语句,break表示中断,结束的意思,可以结束switch语句,
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。default可以省略,但一般不建议,
default可以放在switch语句的任何位置,一般放在最后位置,放在最后位置时紧跟它的break可以省略。
(3)、switch结束的情况:当程序执行过程中遇到了break;当程序执行到了末尾处。


代码演示:

[Java]  纯文本查看  复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public static void main(String[] args) { 
int month = 12
switch (month) { 
   case 1
   case 3
   case 5
   case 7
   case 8
   case 10
   case 12
      System.out.println(month + "月有31天!" ); 
      break
   case 2
      System.out.println(month + "月有28天!" );
      break
   case 4
   case 6
   case 9
   case 11
      System.out.println(month + "月有30天!" ); 
      break
   default
      System.out.println( "不存在该月!" ); 
      break
     
}




注意:
if和switch语句很像,那么在具体场景下如何合理选择使用哪种语句呢?
(1)、能用switch语句实现的都可以用if语句替换,并且if语句的条件表达式没有任何限制,但是switch语句条件表达式的类型
只能是byte、short、int、char这四种类型,以及后加入的枚举和string,并且要注意break的使用。
(2)、 If语句一般用于分支语句比较少的结构,而switch用于分支较多的结构。
(3)、如果判断具体数值不多,而且符合byte、short、int、char这四种类型虽然两个语句都可以使用,但建议使用switch语句,因为效率稍高。
其他情况,对区间判断,对结果为boolean型的判断,使用if,if的使用范围更广。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值