好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Java中的逻辑控制语句详解

顺序结构

我们之前写的大多代码都是顺序结构的,即按照代码的顺序一行一行的执行

?

1

2

3

4

5

6

7

8

代码 1

  System.out.println( "you" );

  System.out.println( "and" );

  System.out.println( "me" );

代码 2

  System.out.println( "and" );

  System.out.println( "me" );

  System.out.println( "you" );

上述代码 1 运行结果:

you
and
me

代码 2 运行结果:

and
me
you

分支结构

if 语句

基本语法格式:

 

?

1

2

3

4

5

6

7

if (布尔表达式) {

     代码 1

   // 条件满足时 执行

} else {

     代码 2

   // 条件不满足时 执行

}

条件语句只能是布尔表达式

布尔表达式的结果为 true,执行代码1,否则执行代码2

举例:

如果 J 这次考到90分以上,奖励一个大鸡腿,否则奖励一个大嘴巴子

?

1

2

3

4

5

6

int score = 95 ;

if (score >= 90 ) {

     System.out.println( "奖励一个大鸡腿!" );

} else {

     System.out.println( "奖励一个大嘴巴子!" );

}

注意事项:

悬垂else:

 

?

1

2

3

4

5

6

7

8

int x = 10 ;

int y = 10 ;

if (x == 10 )

    if (y == 10 )

        System.out.println( "aaa" );

    else

        System.out.println( "bbb" );

      

运行结果:aaa

有多个 if 语句且没有大括号时,else与最近的 if 匹配,故建议写 if 语句时,加上大括号~

switch 语句

基本语法格式:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

switch (表达式) {

     case 常量值 1 :{

         语句 1 ;

         break ;

     }

     case 常量值 2 :{

         语句 2 ;

         break ;

     }

      ...

     default :{

     内容都不满足时执行语句;

         break ;

     }

}

执行流程: 先计算表达式的值 和 case 依次比较,一旦有响应的匹配就执行该项下的语句,直到遇到 break 时结束 当表达式的值没有与所列项匹配时,执行 default 后的语句 注意事项: break 不能遗漏,否则会失去 [多分支选择] 的效果 case 的常量值不能重复 一般不推荐switch 嵌套使用

不能做switch参数的类型有哪些?

long,float,double,boolean

循环结构

while 循环

基本语法格式:

?

1

2

3

while (循环条件) {

     循环语句;

}

循环条件为 true, 则执行循环语句, 否则结束循环

while 循环输入

?

1

2

3

4

5

6

7

8

9

10

11

Scanner scan = new Scanner(System.in);

     // Ctrl+C 直接中断程序

     // Ctrl+D 正常退出程序

     while (scan.hasNext()){

         int year = scan.nextInt();

         if ((year % 4 == 0 && year % 100 != 0 ) || year % 400 == 0 ){

             System.out.println( "闰年!" );

         } else {

             System.out.println( "不是闰年!" );

         }

     }

Ctrl+C 直接中断程序

Ctrl+D 正常退出程序

注意事项: 一定记得步进,否则可能出现死循环 while 循环条件只能是布尔表达式

break break 功能:让循环提前结束 break只能用于两种情况,一个是switch,一个是循环

代码示例:

求100-200中第一个既能被3整除也能被5整除的数:

?

1

2

3

4

5

6

7

8

int num = 100 ;

while (num<= 200 ){

     if (num % 15 == 0 ){

         System.out.println(num);

         break ;   //此处用break,因为break在while循环里

      }

      num++;

}

执行结果: 105

continue

continue 功能:跳过这次循环,进入下次循环

若将上边break 示例代码 中的 break 换成 continue,则会循环打印 105

for 循环

基本语法格式:

?

1

2

3

for (表达式 1 ; 布尔表达式 2 ; 表达式 3 ){

     循环体;

}

执行顺序:

第一趟循环:

首先,执行表达式 1,且表达式 1 只执行一次,即循环的初始化 判断表达式 2 是否为真若为真, 则执行循环体 执行表达式3

第二趟循环 :

判断表达式 2 是否为真若为真, 则执行循环体 执行表达式3

一直到表达式2为假,循环结束

代码示例:

?

1

2

3

for ( int i= 1 ; i<= 10 ;i++){

     System.out.println(i);

}

do while 循环

先执行循环语句,再判定循环条件,条件成立则继续执行,否则循环结束

基本语法格式:

?

1

2

3

do {

   循环语句;

} while (循环体);

代码示例:

打印数字 1 - 10

?

1

2

3

4

5

int num = 1 ;

     do {

         System.out.println(num);

         num++;

     } while ( num<= 10 );

注意事项: do while 循环最后的分号一定不要忘记一般不推荐使用do while语句

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注的更多内容!

原文链接:https://blog.csdn.net/m0_47988201/article/details/119603852

查看更多关于Java中的逻辑控制语句详解的详细内容...

  阅读:12次