Java的三种循环

Java三种循环结构:

1、for循环 2、while循环 3、do...while循环

循环结构组成部分:1、条件初始化语句,2、条件判断语句 , 3、循环体语句,4、条件控制语句

  1. 条件初始化语句:用于表示循环开启时的起始状态,简单说就是循环开始的时候条件是什么样的;

  2. 条件判断语句:用于表示循环反复执行的条件,判断结果,决定循环是否继续执行;

  3. 循环体语句:用于表示循环反复执行的具体内容;

  4. 条件控制语句:用于控制每次循环变化的内容,条件的变化控制循环是否继续执行下去。

循环结构对应的语法:

  1. 初始化语句:可以是一条或多条语句,这些语句可完成一些初始化操作;

  2. 条件判断语句:这是一个boolean(布尔)类型的表达式,这个表达式决定是否执行循环体;

  3. 循环体语句:这里可以是任意语句,这些语句将反复执行,直到条件判断语句为false;

  4. 条件控制语句:这里通常用一条语句改变变量的值,控制循环是否继续执行下去。常见i++,i--这样的操作。

【for循环语句】

格式:

for(条件初始化语句;条件判断语句;条件控制语句){

循环体语句;

}

执行流程:

  1. 执行初始化语句;

  2. 执行条件判断语句,看其结果是true还是false,如果是false则结束循环,如果是true则继续执行;

  3. 执行循环体语句;

  4. 执行条件控制语句;

  5. 回到2继续。


【while循环】

格式

条件初始化语句;

while(条件判断语句){

循环体;

条件控制语句;

}

执行流程:

  1. 执行初始化语句;

  2. 执行条件判断语句,如果是false则结束循环,如果是true继续循环;

  3. 执行循环体语句;

  4. 执行条件控制语句;

  5. 回到2继续。


【do...while循环语句】

格式:

初始化语句

do{

循环体语句;

条件控制语句;

}while(条件判断语句);

执行流程:

  1. 执行初始化语句

  2. 执行循环体语句

  3. 执行条件控制语句

  4. 执行条件判断语句,看其结果是true还是false,如果是false,循环结束,如果是true,继续执行

  5. 回到2继续

三种循环的区别:

  1. for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行);

  2. do...while先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断);

  3. for循环中条件控制语句所控制的自增变量,归属在for循环的语法结构中,for结束后,无法再次访问

  4. while循环,条件控制语句自增变量,在while循环语句之外,循环结束后,该变量可继续使用。

例子:

public static void main(String[] args) {
/*Java三种循环
1、for循环
2、while循环
3、do...while循环
三种循环的区别:
1、or循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行);
2、do...while先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断);
3、for循环中条件控制语句所控制的自增变量,归属在for循环的语法结构中,for结束后,无法再次访问
while循环,条件控制语句自增变量,在while循环语句之外,循环结束后,该变量可继续使用。
*/
//for循环
for (int i = 1; i <= 5; i++) {
System.out.println("for第" + i + "次循环");
}
System.out.println("--------"); //while循环
int j=1; //条件初始化语句
while(j<=5){
System.out.println("while第" + j + "次循环");
j++;//条件控制语句
}
System.out.println("--------"); //do..while循环
int k=1; //条件初始化语句
do{
System.out.println("do...while第" + k + "次循环");
k++; //添加控制语句
}while(k<=5);
}

Java的三种循环:1、for循环 2、while循环 3、do...while循环的更多相关文章

  1. Java的三种代理模式&完整源码分析

    Java的三种代理模式&完整源码分析 参考资料: 博客园-Java的三种代理模式 简书-JDK动态代理-超详细源码分析 [博客园-WeakCache缓存的实现机制](https://www.c ...

  2. Java的三种代理模式

    Java的三种代理模式 1.代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩 ...

  3. Java的三种代理模式简述

    本文着重讲述三种代理模式在java代码中如何写出,为保证文章的针对性,暂且不讨论底层实现原理,具体的原理将在下一篇博文中讲述. 代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下, ...

  4. 理解java的三种代理模式

    代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展. 比如有个歌手对象叫Singer,这个对象有一个唱歌方法叫sing(). 1 public class ...

  5. java 的三种代理

    java的三种代理模式   1.代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作, ...

  6. Java的三种代理模式(Spring动态代理对象)

    Java的三种代理模式 1.代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩 ...

  7. Java语言----三种循环语句的区别

    ------- android培训.java培训.期待与您交流! ---------- 第一种:for循环 循环结构for语句的格式:       for(初始化表达式;条件表达式;循环后的操作表达式 ...

  8. java基础三种循环的使用及区别

    摘要:Java新人初学时自己的一些理解,大神们路过勿喷,有什么说的不对不足的地方希望能给予指点指点,如果觉得可以的话,希望可以点一个赞,嘿嘿,在这里先谢了.在这里我主要说的是初学时用到的Java三个循 ...

  9. java中三种for循环之间的对比

    普通for循环语法: for (int i = 0; i < integers.length; i++) { System.out.println(intergers[i]); } foreac ...

随机推荐

  1. 安装 mysqlclient 报 mysql_config not found

    安装 mysqlclient 报 mysql_config not found raise EnvironmentError("%s not found" % (mysql_con ...

  2. 重写了下Ajax请求Webservice,顺便复习一下Javascript的闭包概念

    var AjaxRequest = function(){ //返回处理结果的回调函数 this.agentCallBack = {}; //javascript 调用domino代理的方法. thi ...

  3. codechef Chef at the River

    难度 \(hard\) 题意 官方中文题意 做法 设\(G=(V,E)\) 定义1:\(M(G)\)为\(G\)的最小点覆盖 定义2:\(ans(G)\)为\(G\)的题意答案,不考虑船夫 结论1:\ ...

  4. 报表生成(POI,jquery.table2excel.js,Echarts)

    最近公司要弄个报表相关的功能,话不多说,先上图 前一种是POI 生成的,后一种是Echarts生成的.报表我想大家都不陌生,基本上在公司业务中都会使用到.先说说POI,jquery.table2exc ...

  5. 深度优先搜索DFS---全球变暖

    内心OS:这道题是去年准备HD复试时,我用来练习DFS的.现在再做这道题,感触颇深,唉,时光蹉跎,物是人非啊~~ 题目: 你有一张某海域NxN像素的照片,”.”表示海洋.”#”表示陆地,如下所示: … ...

  6. ng--todolist

    todolist小案例 该案例的模板文件下载地址 走外国服务器, ̄□ ̄|| app.module.ts import { BrowserModule } from '@angular/platform ...

  7. Tensor的合并与分割

    先来看一下有哪些接口用来进行张量的合并与分割: tf.concat用来进行张量的拼接,tf.stack用来进行张量的堆叠,tf.split用来进行张量的分割,tf.unstack是tf.split的一 ...

  8. LeetCode 9、判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    class Solution: def isPalindrome(self, x: int) -> bool: a = x if a<0: return False else: num = ...

  9. redis 安装 集群 主从 哨兵 docker

    安装redis 官方文档 docker run -d --net host -v /opt/myconfig/redis/redis.conf:/usr/local/etc/redis/redis.c ...

  10. vue动态绑定图片和背景图

    1.动态绑定图片 <img class="binding-img" :src="require('../assets/images/test.png')" ...