上篇说了判断语句,这篇说循环语句。
一、while循环
while循环是最基础的循环,它的语法是:

while( 判断条件 ) {代码块;
}

当满足while里面的判断条件时,程序就执行里面的代码块,直到不再满足,循环才结束,如下图所示。

public class test {public static void main(String[] args) {int i = 1;while (i < 5){            i++;System.out.println("i每次循环的值为:" + i);}System.out.println("i的最后的值为:" + i);}
}
i每次循环的值为:2
i每次循环的值为:3
i每次循环的值为:4
i每次循环的值为:5
i的最后的值为:5

二、do…while循环
do…while的语法是:

do{代码块;
}while (判断条件 );

do…while循环和while循环基本一样,唯一的区别就是while循环是先进行判断,如果符合条件就运行代码块。而do…while循环是先运行代码块,再进行判断。就是说不管条件是否符合,do…while循环都会运行一次。

public class test {        //while循环public static void main(String[] args) {int i = 6;while (i < 5){            i++;System.out.println("i每次循环的值为:" + i);}System.out.println("i的最后的值为:" + i);}
}
i的最后的值为:6   //while循环
public class test {              //do...while循环public static void main(String[] args) {     int i = 6;  do {   i++;System.out.println("i每次循环的值为:" + i);}while(i < 5);System.out.println("i的最后的值为:" + i);}
}
i每次循环的值为:7          //do...while循环
i的最后的值为:7

如图,我们把i的值改成6,如果是while循环,因为不符合判断条件,就直接输出6;而do…while循环则会先运行一次,所以i的值为7。

三、for循环,foreach循环
①for循环是用的最多的循环,它的语法是:

for ( 初始化参数;判断条件 ;循环变量的改变){代码块;
}

for循环先执行顺序是从左到右的,先初始化参数,这里也可以不写,直接为空语句;然后进行条件判断;接着是循环变量的改变,例如下图中的x++,每执行一次循环,x的值都会随之改变;最后是代码块的运行。总的来说,所有的for循环都能用上面两种方式表示,但是for循环结构最简单,所有用的最多。

public class test {       public static void main(String[] args) {int i = 1;for (int x = 1; x < 5; x++){i++;System.out.println("i每次循环的值为:" + i);}System.out.println("i的最后的值为:" + i);}
}
i每次循环的值为:2
i每次循环的值为:3
i每次循环的值为:4
i每次循环的值为:5
i的最后的值为:5

②foreach循环是主要用于数组或者集合的一种for循环,也称为增强for循环,它的语法是:

for (元素类型 元素变量 : 遍历对象) {代码块;
}

元素类型必须和遍历对象里元素的类型一致,元素变量是自己定义用来接收值的变量,遍历对象一般是数组或者集合。

public class test {        public static void main(String[] args) {int a[] = {1,2,3,4,5};String b[] = {"张三","李四","王五"};for (int i : a) {System.out.println("i每次循环的值为:" + i);}for (String name : b){System.out.println("name每次循环的值为:" + name);}}
}
i每次循环的值为:1
i每次循环的值为:2
i每次循环的值为:3
i每次循环的值为:4
i每次循环的值为:5
name每次循环的值为:张三
name每次循环的值为:李四
name每次循环的值为:王五

如图分别定义了两种不同类型的数组,foreach循环相当于每次数组里面的元素按顺序取出来赋值给元素变量,然后执行里面的代码块。当取到数组的最后一个元素时,结束循环。

今日份:
弃我去者,昨日之日不可留;
乱我心者,今日之日多烦忧。

JAVA光头之路(三)--循环相关推荐

  1. python123m与n的数学运算_python小白进阶之路三——循环结构入门练习+Random库练习...

    文章目录 ==资源下载与使用== 输出水仙花数 100以内的素数之和 计算输入数的奇偶数之和与平均数 计算s=a+aa+aaa+-+aaa-aaa的值 有3个数字:1.2.3,能组成多少个互不相同且无 ...

  2. JAVA光头之路(一)--环境变量

    想了几天,决定写我从零开始学习java的过程,算是把自己之前学的重新回顾一遍吧.因为作者是个菜鸟学艺不精,如果各位读者发现了什么我说错的地方欢迎指出! 学java,首先就是装jdk,我用的是jdk1. ...

  3. [转]尚学堂科技 - 马士兵老师-JAVA自学之路

    [原创 - 尚学堂科技 - 马士兵老师] JAVA自学之路 一:学会选择 [转载请注明出处:http://www.bjsxt.com/zixue/zixuezhilu_1.html] 为了就业,不少同 ...

  4. JAVA自学之路 [原创 - 尚学堂科技 - 马士兵老师]

    (我觉得看了之后挺不错的所以分享一下) JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3 ...

  5. JAVA自学之路——马士兵

    JAVA自学之路--马士兵  2007年11月06日 星期二 05:47 P.M.[原创 - 尚学堂科技 - 马士兵老师]    JAVA自学之路 一:学会选择  [转载请注明出处:http://ww ...

  6. java学习之路---java学习的方法和java学习路线

    转载于: http://blog.csdn.net/zhangerqing 前段时间逛论坛,总会有很多新手很迷茫,问到:到底该怎么学好Java,这个问题很重要,尤其对于像我们这样大多数都是靠自学的人来 ...

  7. 【经验】马士兵Java自学之路——(精华版)

    目录  JAVA自学之路 一: 学会选择 2  JAVA自学之路 二: JAVA自学路线图 3  JAVA自学之路 三: 要动手 3  JAVA自学之路 四: 要事为先 4  JAVA自学之路 五: ...

  8. 马士兵老师的Java自学之路(转长篇!!)

    作者:马士兵老师 JAVA自学之路 一:学会选择为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等.那么究竟应该 ...

  9. JAVA学习之路--基础篇三

    目录 关于Java中从键盘输入的语句 nextxxx().next().nextLine()的区别 语句 if和if else语句 Switch语句 for语句 while和do..while bre ...

最新文章

  1. PV(page view)
  2. InfoPath发布要点
  3. 一个web左侧菜单例子
  4. Eclipse 浏览(Navigate)菜单
  5. 线程WAITING--BlockingQueueDemo
  6. 数据结构实验之二叉树五:层序遍历
  7. php 调用带返回多个结果集的方法,PHP中有多个结果集?
  8. 人工智能目标检测模型总结(一)——R-CNN、Fast R-CNN、Faster R-CNN
  9. Ubuntu18.04安装Gstreamer1.0(六)
  10. .NET(C#)下的移动彩信MM7协议研究之路(二)
  11. 神马搜索php,php判断神马搜索引擎蜘蛛的方法
  12. FHQ TREAP 学习总结
  13. JavaScript的字符串去空格
  14. 短文:U盘物理写保护原理
  15. java -- 随机获取字母或者数字
  16. 光纤收发器的原理及应用_光纤收发器知识讲解(一)
  17. cpython gil_什么是GIL?为什么有了GIL还需要线程同步?为什么CPython设计了GIL?
  18. C语言str系列函数操作
  19. 图片转换为css_快速将色彩理论转换为CSS
  20. 一文分析Binder机制和AIDL的理解

热门文章

  1. android canvas光晕绘制_android用canvas绘制两种波纹效果
  2. 小马哥---高仿三星S7 主板型号S205 6580芯片刷机拆机主板图与开机识别图
  3. 《设计模式:可复用面向对象软件的基础》——面向对象设计原则、创建型模式(笔记)
  4. Access denied for user ‘root‘@‘%‘ to database ‘information_schema‘
  5. 华为副总裁鸿蒙,告别安卓!华为高管:鸿蒙即将开源系统
  6. 数学建模之灰色关联实例
  7. 中国社保系统漏洞百出
  8. mac brew opencv_Mac触控板绘画工具
  9. centos 7.2 邮件服务器搭建-iredmail邮件服务器搭建与使用
  10. Excel:如何将vlookup 中#N/A全部替换为0。