“流程控制”:程序能够根据用户数据的不一样,执行不一样的代码。java
Java为咱们的流程控制提供了几种语句:code
1).if语句:作判断的;作用域
2).switch语句:作判断的;it
3).for语句:循环语句for循环
4).while语句:循环语句class
5).do_while语句:循环语句变量
/** *if语句有三种格式,分别以下 */ //格式一 if(布尔表达式){ //若是布尔表达式的结果为:true,则执行这里。 } //格式二 if(布尔表达式){ //若是true,执行这里 }else{ //若是布尔表达式为:false,执行这里 } //格式三 if(布尔表达式1){ //若是布尔表达式1为true,则执行这里 }else if(布尔表达式2){ //若是布尔表达式1为false,而布尔表达式2为true,执行这里 }else if(布尔表达式3){ //若是布尔表达式1,2为false,而布尔表达式3为true,执行这里 }else{ //上述全部判断均为false,执行这里 }
switch的做用同if语句同样,都是作“判断的”。只是在某些状况下(对一个变量的多个等性判断), 使用switch比if语句可读性更强。循环
switch(变量/表达式--值:byte/short/int/char/String/枚举类型){ case 值1://注意:值必须是一个常量,不能是变量,或者表达式 break; case 值2: break; ... default: break; }
注意:
1).多个case的值不能有重复的;
2).case和case之间,case和default之间没有顺序关系;程序
case的穿透性数据
1).case中的break;语句,表示:跳出switch语句。break能够没有,若是没有,
当执行完这个case后,会无条件的继续执行后面的case中的语句,
直到遇到break或者switch结束。
for(定义循环变量表达式 ; 布尔表达式 ; 增量表达式){ }
while(布尔表达式){ //循环体 }
// ... do{ //循环体 }while(布尔表达式); // ....
1).三种循环,它们的循环体中若是只有一句话,能够省略大括号(但不建议):
2).三种循环都有大括号,就意味着有“变量的做用域”,在循环大括号内定义的变量:只在本次循环内有效,在下次循环,或者结束循环后都不能被访问:
3).while循环和do_while循环的区别:
- while循环:先判断,后循环;
- do_while循环:先循环一次,而后再判断,再循环....
跳出语句break和continue
1).break语句:只能用在switch和循环语句中
在switch中,表示:跳出switch语句;
在循环语句中,表示:跳出循环体,结束循环;2).continue语句:只能用在循环语句中,表示:结束本次循环,继续下一次循环
class Demo { public static void main(String[] args) { int count = 0; while(true){ count++; System.out.println("HelloWorld!"); if(count == 5){ break; } } } }
嵌套循环:指循环内部还能够定义其它循环。外层循环每执行一次,内层循环都要所有执行一次。
class Demo { public static void main(String[] args) { for(int n = 1 ; n <= 5 ; n++){ System.out.println("n = " + n); for(int m = 1 ; m <= 3 ; m++){ System.out.println("m = " + m); } } } }