while循环与for循环有什么区别?
首先分别说一下二者的概念:
1、for循环
(1)概念
for循环可以遍历任何序列的项目,比如字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。2、while循环?
(1)概念
while循环会一直执行它下面的代码片段,直到它对应的布尔表达式为False时才会停下来。具体来讲,while循环所作的和if语句类似,也是去检查一个布尔表达式的真假,不一样的是它下面的代码片段不是只被执行一次,而是执行完后再调回到while所在的位置,如此重复进行,直到while表达式为False为止。
二者区别:
对比for循环和while循环,我们不难发现,两者在使用else上有很大区别,如果else语句和while循环语句一起使用,则当条件变成False时,就执行else语句。如果else语句和for循环语句一起使用,else语句块只在for循环正常终止时执行。另外for循环和while循环的循环次数有很大的不同。前者是取决于数据包含的元素个数,后者是却取决于条件何时为False。而在循环取值方面,for循环比while循环要强大,所以如果遇到循环取值的场景,就应该用for循环。但是另一方面,for循环只能对某种事物的集合做循环,而while可以进行任何种类的循环。但是,while循环很容易出错,大部分情况for循环也是一个很好的选择。
for称为计数循环,,即你知道 循环多少次,,即可使用而while为 条件循环,,即满足条件就会循环,而你不一定要知道循环多少次噢。
for用于可预测循环次数的情况,而while可在不确定循环次数时使用,while甚至可以不在循环指令上指定跳出循环的条件。应该优先考虑for循环,一般情况下for循环的效率都是最高的。
都可以用for代替,while(true) 可以用 for(;true;){} ?在条件参数那填个永远为true的条件就行了。while(rs.next())可以用 for(;rs.next();){ } ?for循环是非常灵活的,3个参数各用用处,只用第2个参数条件,就可以完全替代while循环了,只是看起来别扭而已。
while 和for循环都是一样的,能做同样的事, 因为他们都有三个条件,?都要赋初值,判断条件,自增或自减所以他们之间能互相替代。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!