程序流程控制(一)— if判断、switch分支判断
2017-06-06 22:27
381 查看
1. if判断
语法:if( 条件判断表达式 ){
执行语句…
}
注意:if的判断的条件的结果一定是 bolean 类型。如果条件判断的表达式的返回值是 true,则可以执行 if 内部的语句,反之,就不执行。
语法:
if( 条件判断表达式 ){
执行语句…
}else{
执行语句…
}
注意:如果条件判断的表达式的返回值是 true,则可以执行 if 内部的语句,反之,就执行 else 中的语句。
语法:
if( 条件判断表达式 ){
执行语句…
}else if( 条件判断表达式1 ){
执行语句…
}else if( 条件判断表达式2 ){
…
}else{
执行语句…
}
注意:多重 if,当遇到满足第一个表达式条件时,执行当前 if 语句,并且不会再向下执行。
2. switch分支判断
语法:switch( 表达式 ){
case 常量1:
执行语句1;
break;
case 常量2:
执行语句2;
break;
……
default:
执行语句n;
break;
}
注意:
case后边的这个常量要和表达式的结果做等值判断,如果判断相等,就执行它下面的语句。在执行 break 的时候跳出 switch;如果一个也没有匹配上,就执行 default 默认情况。
break 可以省略不会报错;但是要知道,如果省略就会穿透执行语句(不管是否能匹配上),直到遇到一个 break 才会跳出,所以一般情况下,我们不建议省略 break。
举个例子:
class Demo1{ public static void main(String[] args){ int dj = 1; switch(dj){ case 1: System.out.println("*"); //break; case 2: System.out.println("**"); //break; case 3: System.out.println("***"); break; case 4: System.out.println("****"); break; case 5: System.out.println("*****"); break; default: System.out.println("请重新输入..."); break; } } } // 因为dj=1,所以输出的结果应该是“*”,但是在这里我们把“case 1”,“case 2”的“break;” 给注释掉了,所以最后的输出结果为:“*” “**” “***”
switch 和 if 的区别:
if 可以做等值判断,也可以做区间判断;switch 只能做等值判断。
举个例子吧:计算2017年的2月有多少天?
class Demo1{ public static void main(String[] args){ int year = 2017; int month = 2; int day = 0; switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: day = 31; break; case 4: case 6: case 9: case 11: day = 30; break; case 2: if((year%400) == 0 || (year%4 == 0&& year%100 != 0)){ day = 29; }else{ day = 28; } break; default: System.out.println("一年中没有这个月份"); break; } System.out.println(year + "年"+ month+"月有"+day+"天"); } }
注意:
switch后边括号内的表达式的类型可以是:byte,short,int,char,string(jdk1.7以后才可以使用string类型);
下面对string类型进行举例说明吧:
class Demo1{ public static void main(String[] args){ String dj = "a"; switch(dj){ case "a": a0d9 System.out.println("*"); break; case "b": System.out.println("**"); break; case "c": System.out.println("***"); break; case "d": System.out.println("****"); break; case "e": System.out.println("*****"); break; default: System.out.println("请重新输入..."); break; } } } // 输出结果为:*
相关文章推荐
- Java语言基础——分支流程控制if switch
- java程序流程控制(if、switch、for)
- 控制流程语句之顺序语句、if判断语句、键盘录入、switch选择判断语句
- java学习08--程序控制流程--判断结构if练习
- java程序流程控制,if语句,switch语句,while语句,do while语句,for 语句,break关键字,continue关键字
- Java语言基础(程序流程控制-if、switch、for、while、do while、break、continue)
- 09 WebGL 着色器编程语言GLSL ES的程序流程控制(分支ifelse和循环for)
- 黑马程序员—Java语言基础(程序流程控制-if、switch、for、while、do while、break、continue)
- ActionScript 3.0 Step By Step系列(三):学学流程控制,编编if-else & switch & while & for
- 流程控制-分支-switch语句
- ActionScript 3.0 Step By Step系列(三):学学流程控制,编编if-else & switch & while & for
- shell流程控制语句之一if判断
- 07-C语言流程控制if、switch
- 第七讲 流程控制--if...else 和 switch...case
- C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)
- ActionScript 3.0 Step By Step系列(三):学学流程控制,编编if-else & switch & while & for
- 黑马程序员------C语言-----流程控制(选择结构:if,switch)
- JAVA概述(8) 分支控制 if switch(理论1)
- JS:流程控制(if,switch)高级 + Switch Case中的经典
- 程序流程的控制之条件分支(Delphi)