Java代码的三根顶梁柱:循环结构

 更新时间:2021年08月06日 09:33:22   作者:rampant boy  
这篇文章主要介绍了JAVA 循环结构的相关资料,文中讲解的非常细致,示例代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下

顺序结构

顺序结构是指按照代码一行一行的读取。 例如:

System.out.println("abc");
System.out.println("def");
System.out.println("ghi");

结果为:

image-20210803165028913

如果调整代码的书写顺序,例如:

System.out.println("ghi");
System.out.println("def");
System.out.println("abc");

那么结果为:

image-20210803165146860

分支结构

if语句

语法1

if(布尔表达式) {
    //条件满足时执行代码
}

语法2

if(布尔表达式) {
    //条件满足时执行代码
} else {
    //条件不满足时执行代码
}

语法3

if(布尔表达式) {
    //条件满足时执行代码
} else if(布尔表达式) {
    //条件满足时执行代码
} else {
    //条件都不满足时执行代码
}

代码示例

int n = 5;//判断n的奇偶性
if((n % 2) == 0) {
    System.out.println("偶数");
} else {
    System.out.println("奇数");
}

结果为:

image-20210803172816147

悬垂else

else只与最近的未匹配的if进行匹配。 例如:

int x = 10;
int y = 0;
if (x == 10)
    if (y == 10)
        System.out.println("aaa");
else
    System.out.println("bbb");

else与if(y == 10) 匹配,所以结果为:

image-20210804154550288

switch语句

基本语法

switch(整数|枚举|字符|字符串){
     case 内容1 : {
         //内容满足时执行语句;
         break;
     }
     case 内容2 : {
         //内容满足时执行语句;
         break;
     }
     ...
     default:{
         //内容都不满足时执行语句;
         break;
     } 
}

注意:long类型,float类型,double类型和boolean类型不能做switch的参数。

根据 switch 中值的不同, 会执行对应的 case 语句. 遇到 break 就会结束该 case 语句。如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句。

代码示例

int day = 1;
switch(day) {
    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;
    case 6:
        System.out.println("星期六");
        break;
    case 7:
        System.out.println("星期天");
        break;
    default:
        System.out.println("输入错误");
        break;
}

结果为:

image-20210804164233295

注意事项

如果上述没有break:

int day = 1;
switch(day) {
    case 1:
        System.out.println("星期一");
    case 2:
        System.out.println("星期二");
    case 3:
        System.out.println("星期三");
    case 4:
        System.out.println("星期四");
    case 5:
        System.out.println("星期五");
    case 6:
        System.out.println("星期六");
    case 7:
        System.out.println("星期天");
    default:
        System.out.println("输入错误");
        break;
}

那么结果为:

image-20210804164441434

因此,如果没有break,那么case语句会依次向下执行,,从而失去了多分支的效果

循环结构

while循环

基本语法

while(循环条件){ 
    //循环语句;
}

循环条件必须为布尔表达式。

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

代码示例

int n = 1;//打印1——10的数字
while(n <= 10) {
    System.out.println(n);
    n++;
}

结果为:

image-20210804164958498

for循环

基本语法

for(表达式1;表达式2;表达式3){ 
    //循环体;
}
  • 表达式1:用于初始化循环变量
  • 表达式2:循环条件(布尔表达式)
  • 表达式3:更新循环变量

代码示例

int sum = 0;//计算1——100的和
for (int i = 0; i <= 100; i++) {
    sum += i;
}
System.out.println(sum);

结果为:

image-20210804165624731

do while循环

基本语法

do{ 
	//循环语句; 
}while(循环条件);

先执行循环语句, 再判定循环条件。

代码示例

int n = 1;
do {
    System.out.println(n);
    n++;
}while(n <= 10);

结果为:

image-20210804165912019

break

break 的功能是让循环提前结束。

例如:

for (int i = 1; i <= 10; i++) {
    if(i == 3) {
        break;
    }
    System.out.println(i);
}

结果为:

image-20210804171055205

continue

continue 的功能是跳过这次循环, 立即进入下次循环

例如:

int n = 1;//打印1——10的奇数
while(n <= 10) {
    if(n % 2 == 0) {
        n++;
        continue;
    }
    System.out.println(n);
    n++;
}

结果为:

image-20210804171417876

总结

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

相关文章

  • SpringBoot中Mybatis + Druid 数据访问的详细过程

    SpringBoot中Mybatis + Druid 数据访问的详细过程

    Spring Boot 底层都是采用 SpringData 的方式进行统一处理各种数据库,SpringData也是Spring中与SpringBoot、SpringCloud 等齐名的知名项目,下面看下SpringBoot Mybatis Druid数据访问的详细过程,感兴趣的朋友一起看看吧
    2021-11-11
  • java多线程中的异常处理机制简析

    java多线程中的异常处理机制简析

    在java多线程程序中,所有线程都不允许抛出未捕获的checked exception,也就是说各个线程需要自己把自己的checked exception处理掉,需要了解的朋友可以参考下
    2012-11-11
  • IDEA2023.3.4开启SpringBoot项目的热部署(图文)

    IDEA2023.3.4开启SpringBoot项目的热部署(图文)

    本文使用的开发工具是idea,使用的是springboot框架开发的项目,配置热部署,可以提高开发效率,文中通过图文介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • Springboot的yml配置文件用法

    Springboot的yml配置文件用法

    这篇文章主要介绍了Springboot的yml配置文件用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 如何在IDEA中对 hashCode()和 equals() 利用快捷键快速进行方法重写

    如何在IDEA中对 hashCode()和 equals() 利用快捷键快速进行方法重写

    这篇文章主要介绍了如何在IDEA中对 hashCode()和 equals() 利用快捷键快速进行方法重写,需要的朋友可以参考下
    2020-08-08
  • IDEA maven项目依赖无法解析问题

    IDEA maven项目依赖无法解析问题

    这篇文章主要介绍了IDEA maven项目依赖无法解析问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • java高并发的线程中断的几种方式详解

    java高并发的线程中断的几种方式详解

    这篇文章主要介绍了Java线程中断机制几种方法及示例,向大家分享了这几种方法的介绍几代码示例,具有一定参考价值,需要的朋友可以了解下。
    2021-10-10
  • Java迭代器与Collection接口超详细讲解

    Java迭代器与Collection接口超详细讲解

    Collection也称集合,集合概述:集合是Java中提供的一种容器,可以用来存储多个数据。Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合
    2022-07-07
  • Java单例模式的深入了解

    Java单例模式的深入了解

    这篇文章主要为大家介绍了Java单例模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Java拦截器和过滤器的区别分析

    Java拦截器和过滤器的区别分析

    今天带大家分析java拦截器和过滤器的区别,文中有非常详细的解释说明,对正在学习java的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05

最新评论