控制语句

Java支持以下控制结构:
条件控制语句:if,if - else,if - else if,switch
循环语句:while,do - while,for循环,死循环
循环的中断语句:break,continue

条件控制语句

1、if 语句

(1)语法结构:if (单一条件)

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

(2)执行流程


控制语句_第1张图片
int a = 1,b = 2;
if ( a < b ) {
    System.out.println(a);  // 输出结果为 1
}

2、if - else 语句

(1)语法结构:if - else(二选一)

if ( 条件表达式 ) {
        执行语句块1;
} else {
        执行语句块2;
}

(2)执行流程

控制语句_第2张图片
int a = 5;
int b = 8;
int c = 6;
if ( a > c ){
       System.out.println(a); 
} else {
       System.out.println(b);  //输出结果为 8
}

3、if - else if 语句(多选一)

(1)语法结构:if - else if (多选一)

if ( 条件表达式 1 ) {
        执行语句块 1;
} else if (条件表达式 2 ) {
        执行语句块 2;
}    ··· 
 else if (条件表达式 n ) {
        执行语句块 n;
} else {
        执行语句块 n+1;
}     

(2)执行流程

控制语句_第3张图片
int a = 88;
int b = 69;
int c = 92;
int avg = (a +b + c)/3;
if(avg >= 90){
    System.out.println("A");
}else if (avg >= 80 && avg < 90) {
    System.out.println("B");           //输出结果为  B
}else if (avg >= 70 &&  avg < 80) {
    System.out.println("C");
}else if (avg >= 60 && avg < 70) {
    System.out.println("D");
}else {
    System.out.println("E");
}

4、switch 语句

(1)语法结构:switch

switch ( 条件表达式 ) {
        case  常量取值 1 : 
                   执行语句块 1;
                   break ; 
        case  常量取值 2 : 
                   执行语句块 2;
                   break ; 
        ···
        case  常量取值 n : 
                   执行语句块 n;
                   break ;
        default :
                   执行语句块 n+1;
                   break ;
}

(2)说明
<1> 条件表达式的值只能是byte,short,int,char型,不接受其他类型的值。
<2> 常量值的数据类型必须与条件表达式的数据类型兼容。
<3> 不允许有重复的 case 取值。
<4> 当条件表达式的值不满足所以 case 的取值,则会直接执行 default 块的语句,然后跳出 switch 循环结构。

int a = 95;
int result;
switch (a/10) {
    case 10:
        System.out.println("A+");
        result = a;
        break;
    case 9:
        System.out.println("A");
        result = a;
        break;
    case 8:
        System.out.println("B");
        result = a;
        break;
    case 7:
        System.out.println("C");
        result = a;
        break;
    case 6:
        System.out.println("D");
        result = a;
        break;
    default:
        System.out.println("E");
        result = a;
        break;
    }
    System.out.println("result = "+result);

// 输出结果为: A
//            result = 95;

循环语句:

1、while 循环

(1)语法结构

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

(2)执行流程

控制语句_第4张图片
//while循环
int i = 0; 
//     (1)判断语句:结果是true或flase
while  ( i <= 10 )  {
    //(2)执行语句块
    System.out.print( i + " ");
    i ++;    // 循环体
}

//输出结果:0 1 2 3 4 5 6 7 8 9 10 

2、do - while

(1)语法结构

 do {
       执行语句块 ;
} while ( 循环条件表达式 ) ;

(2)执行流程

控制语句_第5张图片

(3)说明
do-while:循环的次数为1--N次。先执行一次语句,再判断条件。
for / while:循环的次数为0--N次。先判断条件,再执行语句。

// do - while循环
int i = 0;
do {
    System.out.print(i + " " );//(1)执行语句块
    i++;  // 循环体
} while ( i < 10 );  // (2)判断语句:结果是true或flase

//输出结果:0 1 2 3 4 5 6 7 8 9  

3、for循环

(1)语法结构

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

(2)执行流程

控制语句_第6张图片
// for 循环
for ( int i = 0 ; i <= 20 ; i = i + 2 ) {
    if ( i <= 10 ) {
        System.out.print( i + " " );
    } else {
        System.out.print( 20 - i + " " );               
    }
}
//输出结果:0 2 4 6 8 10 8 6 4 2 0

4、死循环

(1)语法结构

for (  ;   ;   ) {   // 中间的循环条件表达式的值默认为 true
     执行语句块 ; 
}

whlie ( true ) {
     执行语句块 ; 
}
for (    ;     ;     ) {
    System.out.println(" hello java ");
}
//-----------------------------------------------------
int i = 0;
while ( true ) {
    System.out.println("hello java");
    i++;
}

循环的中断语句:

1、break

break 语句:用于终止某个语句块的执行。用在循环语句体中,可以强制退出当前循环。
“ break ; ” 可以出现在 while 、do - while、for、switch 循环语句体中。

int i = 0;
while (true) {
    System.out.println( i + " " );
    i++;
    if (i==10) {
        break;//当循环中执行到了break关键字则马上终止,跳出循环
    }
}
//输出结果:0 1 2 3 4 5 6 7 8 9 

2、continue

continue 语句:在循环语句体中,用于终止某次循环。当循环中执行到了continue 关键字,则马上停止当前这一次循环,跳过continue关键字后面未执行的语句,继续开始下一次的循环执行。
“ continue ; ” 可以出现在 while 、do - while、for 循环语句体中。

for (int j = 0; j < 10; j++) {
    if ( j % 2 ! = 0) {
        continue;  //当循环中执行到了continue关键字,则马上停止当前这一次循环,继续下一次的循环执行
    }
    System.out.print( j + " " );
}   
//输出结果:0 2 4 6 8 

你可能感兴趣的:(控制语句)