1、While循环语句

代码实现:计算1-1000相加的和

Java写法:




java如何无限循环 java无限循环的代码_java如何无限循环


Python写法:


java如何无限循环 java无限循环的代码_java如何无限循环_02


小结:Python不支持自增自减,Java支持自增自减。

2、do...while循环语句

代码实现:当输入密码为123456时,提示密码正确,否则提示请输入6位数密码。

Java使用do...while循环:


java如何无限循环 java无限循环的代码_java_03


由上图可知,do...while循环循环的是do和while中间的部分代码,while后面的代码并没有循环。

小结:

(1)Python不支持do...while循环,Java支持;

(2)while循环可以理解为,当XXX时,执行YYY,例如第一张截图,当a小于等于1000时,sum+=a,a++。由于条件XXX可能存在为false的情况,循环有可能存在一次都不执行的情况。

(3)do...while循环可以理解为,执行YYY,当XXX时,例如上一张截图。输出请输入密码,当密码不等于123456时。do后面的执行语句至少会执行一次;

遗留问题:

do...while语句暂时不知道如何使用while语句等价替换。原先Python刷题也只是通过While True进行模拟,但循环本身没有退出循环。以下图Python为例,并不是很容易用while来模拟do...while的循环:


java如何无限循环 java无限循环的代码_Powered by 金山文档_04


通过增加一个变量n来计算是否是首次打印,来控制上图在每次循环中重复打印两次输出的问题,但是又会存在新增了一个变量的内存,以及每次循环多一次运算的问题,暂时不知道这里影响:


java如何无限循环 java无限循环的代码_java如何无限循环_05


3、for循环

代码实现:计算2-100之间的偶数和

Java写法:


java如何无限循环 java无限循环的代码_Powered by 金山文档_06


Python写法:


java如何无限循环 java无限循环的代码_python_07


小结:

Java的for循环是在for后边的括号里声明变量、赋值等,而Python需要在循环前先声明变量。

4、foreach语句

foreach语句是for语句的特殊简化版本,不能完全取代for语句,但任何foreach语句都可以改写成for语句。

代码实现遍历整型数组:

Java写法:


java如何无限循环 java无限循环的代码_Powered by 金山文档_08


Python并不支持foreach:


java如何无限循环 java无限循环的代码_python_09


5、习题练习

1、1、2、3、5、8、13、21、34、...是一组典型的斐波那契数列,前面两个数相加等于第三个数。请问第N个斐波那契数列值为多少?

思路是通过创建一个列表[1,1],根据输入的数字num,循环num-2次,依次将第3、4...num个斐波那契数加入那列表,列表最后一个元素即为第num个斐波那契数。


java如何无限循环 java无限循环的代码_java如何无限循环_10


通过Java实现的思路与Python有所区别,未通过创建列表,而是通过声明变量进行循环赋值。


java如何无限循环 java无限循环的代码_Powered by 金山文档_11


Java此处的实现逻辑和不通过排序、删除元素的求一个列表中第二大元素的方法一样--通过声明2个变量,将前2个元素赋值给2个变量。变量先比大小,然后将较小的元素依次与列表中第3个、第4个元素依次比较。