java、python、JavaScript以及jquery循环语句的区别
一、概述
python中循环语句有两种,while,for;
JavaScript中循环语句有四种,while,do/while,for,for/in
jQuery循环语句each
二、java循环语句
a、while
while的语法为:
while(条件语句){
代码块
}
或者:
while(条件语句)代码;
while的含义非常简单,只要条件语句为真,就一直执行后面的代码,为假就停止不做了。例如:
Scannerreader=newScanner(System.in);
System.out.println("pleaseinputpassword");
intnum=reader.nextInt();
intpassword=6789;
while(num!=password){
System.out.println("pleaseinputpassword");
num=reader.nextInt();
}
System.out.println("correct");
reader.close();
上述代码中,只要密码不等于6789,就一直提示输入,reader.nextInt()从屏幕接收一个数。
b、do/while
不管条件语句是什么,代码块都会至少执行一次,则可以使用do/while循环。do/while的语法是:
do{
代码块;
}while(条件语句)
即:先执行代码块,再判断条件是否成立,如果成立,继续执行代码,不成立退出循环。
Scannerreader=newScanner(System.in);
intpassword=6789;
intnum=0;
do{
System.out.println("pleaseinputpassword");
num=reader.nextInt();
}while(num!=password);
System.out.println("correct");
reader.close();
c、for循环
for循环适用于循环次数已知的情况,语法规则:
for(初始化语句;循环条件;步进操作){
循环体
}
每次判断循环条件,条件成立执行循环,执行完毕后,初始值进行步进操作,示例代码:
int[]arr={1,2,3,4};
for(inti=0;i<arr.length;i++){
System.out.println(arr[i]);
}
只要i小于arr的长度4,就执行循环,需要注意的是,循环执行完毕后,i=4,即虽然没有执行循环,但i自增1。
初始值为空的情况:
int[]arr={1,2,3,4};
inti=0;
for(;i<arr.length;i++){
System.out.println(arr[i]);
}
这是因为,初始值在循环前已定义。
在for中,每个语句都是可以为空的,也就是说:
for(;;){}
是有效的,这是个死循环,只不过每次都没有做任何事,相当于python中每次执行pass语句。
d、foreach
foreach的语法如下代码所示:
int[]arr={1,2,3,4};
for(intelement:arr){
System.out.println(element);
}
foreach使用冒号:,冒号前面是循环中的每个元素,包括数据类型和变量名称,冒号后面是要遍历的数组或集合,每次循环element都会自动更新。
e、循环控制:
break;跳出本层循环。
执行break后,不再执行循环的任何操作,初始值也不会自增。
continue;跳出本次循环,初始值自增,执行下次循环。
三、python循环语句
3.1for循环
a、
li=[1,2,3,4] foriinli: print(i)
上述代码中,i代表列表li的每一个元素。语法规则为for...in...,相当于java中的foreach。
b、
li=[1,2,3,4] fori,jinenumerate(li): print(i,j)
上述代码中,i代表列表li的索引,j代表li的每一个元素。
注:索引默认从0开始,可设置fori,jinenumerate(li,1):从而设置索引从1开始。
c、
li1=[1,2,3,4] li2=[4,5,6,7] fori,jinzip(li1,li2): print(i,j)
上述代码中,i代表列表li1的元素,j代表li2的元素。
d、
dic={'a':1,'b':2}
forkindic:
print(k)
上述代码中,相当于对字典的key进行循环,等价于下面的代码:
dic={'a':1,'b':2}
forkindic.keys():
print(k)
e、
dic={'a':1,'b':2}
forkindic.values():
print(k)
上述代码中,相当于对字典的values进行循环。
f、
dic={'a':1,'b':2}
fork,vindic.items():
print(k,v)
上述代码中,k代表字典的key,v代表字典的value值。
3.2while循环
a、
i=1 whilei: pass
上述代码中,whilei:即当i为真值时执行循环,在python中除了none、空字符串、空列表、空字典、空元组、False,其他均为真值,即为True。
b、
whileTrue: pass
上述代码适用于死循环,即条件默认为真。
c、其它通用while循环:
while条件: pass
据本人经验,python中如果需要将本来已经false的条件作为循环条件,可以采取以下方案:
方案一、
i=False whileiisnotTrue: pass
或者:
i=False whileiisFalse: pass
方案二、
i=False whilei==False: pass
四、JavaScript循环语句
a、while循环
varcont=0;
while(cont<10){
console.log(cont);
cont++;
}
上述代码可看出JavaScriptwhile循环需要先给定初始值,每次判断循环条件,条件为真执行循环,并在循环内部对初始值进行自增。
如果想生成死循环,上述代码可改成:
while(true){
console.log(1);
}
此时,不需要设置初始值和自增。
b、do/while
JavaScript中do/while和java中do/while一样,参考上文中javado/while。需要注意JavaScript中定义变量用var。
do{
代码块;
}while(条件语句)
即,先执行代码块,再判断条件是否成立,成立则继续执行下次循环,不成立退出循环。
c、for
vara=document.getElementById('k1').children;
for(vari=0;i<a.length;i++){
varinp=a[i];
varat=inp.getAttribute('type');
if(at=='text')inp.setAttribute('value','123');
}
上述代码是获取id='k1'下所有type='text'的标签并设置value值等于'123'.
d、for in
varc1=document.getElementById('i1').getElementsByTagName('input');
for(variinc1){
if(c1[i].checked)c1[i].checked=false;
elsec1[i].checked=true;
}
上述代码是找到所有的input标签,并对其进行循环,这里i代表索引,上述代码操作的是反选复选框,如果被选上,择设置该标签的checked=false,反之,设置为true;
五、jQuery循环语句
each语句:
$(':text').each(function(){
console.log($(this).val());
});
语法规则:标签集合.each(匿名函数);
上述代码的意思是:获取所有inp标签中type='text',的标签,并对其进行循环,每次打印它的值。
jQuery中跳出循环用return:
returnture:退出本次循环,执行下次循环,相当于其它语言的continue;
returnfalse:退出本层循环,即退出当前each,相当于其它语言的break;
以上就是对Java、python、Javascript以及jquary循环语句的资料整理,需要的朋友可以参考下.