[12] 分支和循环语句


1、分支语句

1.1 if

if( 表达式 ) { 执行语句块 }

1.2 if else

if( 表达式 ) { 执行语句块 } else { 执行语句块 }
 注意:对于 if else 的使用,有时候也可以使用三目运算符来代替

1.3 if else if 

if( 表达式 ) { 执行语句块 } else if ( 表达式 ) { 执行语句块 } ...(可嵌套多个else if)
 

1.4 switch case

switch( 表达式 ) {
    case 取值1 : 语句块1
    ...
    case 取值n : 语句块n
    default : 语句块n+1
}

注意:
  • 表达式的值只能接受int、byte、char、short、枚举,JDK1.7之后可以接受String
  • 不允许有重复的case值
  • switch一旦碰到第一次case匹配,则跳到该处运行,且会顺序执行之后所有程序代码,不论之后case是否匹配,直到碰到break语句为止
  • 如果所有case都不匹配,则执行default对应语句块



2、循环语句

2.1 while

while( 条件表达式 ) { 执行语句块 }
 

2.2 do while

先do再while,即至少会执行一次循环

do{ 执行语句体 } while( 条件表达式 )
 

2.3 for

for ( 初始化表达式 : 循环条件表达式 : 循环后的操作表达式 ) { 执行语句块 }
 

2.4 循环终止 break、continue

在使用循环语句时,只有循环条件表达式的值为false时,才能结束循环。如果想要提前中断,需要使用break或continue语句。

2.4.1 break

  • 跳出当前循环
  • 循环是可以使用命名标号的,如果break没有指定标号中断,则默认是中断最近的循环
  • 实际中很少对循环进行标号命名
loop1: 
for (int i = 0; i < 4; i++) {
    loop2:
    for (int j = 0; j < 10; j++) {
        if (j % 2 == 0) {
            System.out.println(j);
            break loop1; //指定标号,则跳出loop1,否则,仅跳出loop2
        }
    }
}

2.4.2 continue

  • continue用在循环语句体重,用于跳过continue之后未执行的循环,直接开始下一步循环
  • continue只能出现在循环语句while、do while、for中
  • continue即便在for中使用,只是跳出其执行语句块,循环后的操作表达式仍会执行


posted @ 2017-09-01 10:09  Dulk  阅读(334)  评论(0编辑  收藏  举报