欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java、python、JavaScript以及jquery循環(huán)語(yǔ)句的區(qū)別

 更新時(shí)間:2016年07月15日 09:27:54   投稿:lqh  
本篇文章主要介紹java、python、JavaScript以及jquery的循環(huán)語(yǔ)句的區(qū)別,這里整理了它們循環(huán)語(yǔ)句語(yǔ)法跟示例,以便大家閱讀,更好的區(qū)分它們的不同

一、概述

       python中循環(huán)語(yǔ)句有兩種,while,for;

  JavaScript中循環(huán)語(yǔ)句有四種,while,do/while,for,for/in

  jQuery循環(huán)語(yǔ)句each

二、java 循環(huán)語(yǔ)句

         a、while

                while 的語(yǔ)法為:

while(條件語(yǔ)句){
 代碼塊
}

          或者:

while (條件語(yǔ)句) 代碼;

while的含義非常簡(jiǎn)單,只要條件語(yǔ)句為真,就一直執(zhí)行后面的代碼,為假就停止不做了。例如:

Scanner reader = new Scanner(System.in);
System.out.println("please input password");
int num = reader.nextInt();
int password = 6789;
while(num!=password){
 System.out.println("please input password");
 num = reader.nextInt();
}
System.out.println("correct");
reader.close();

上述代碼中,只要密碼不等于6789,就一直提示輸入,reader.nextInt()從屏幕接收一個(gè)數(shù)。

b、do/while

不管條件語(yǔ)句是什么,代碼塊都會(huì)至少執(zhí)行一次,則可以使用do/while循環(huán)。do/while的語(yǔ)法是:

do{
 代碼塊;
}while(條件語(yǔ)句)

 即:先執(zhí)行代碼塊,再判斷條件是否成立,如果成立,繼續(xù)執(zhí)行代碼,不成立退出循環(huán)。

Scanner reader = new Scanner(System.in);
int password = 6789;
int num = 0;
do{
 System.out.println("please input password"); 
 num = reader.nextInt();
}while(num!=password);
System.out.println("correct");
reader.close();

 c、for循環(huán)

 for循環(huán)適用于循環(huán)次數(shù)已知的情況,語(yǔ)法規(guī)則:

for(初始化語(yǔ)句; 循環(huán)條件; 步進(jìn)操作){
 循環(huán)體
}

每次判斷循環(huán)條件,條件成立執(zhí)行循環(huán),執(zhí)行完畢后,初始值進(jìn)行步進(jìn)操作,示例代碼:

int[] arr = {1,2,3,4};
for(int i=0;i<arr.length;i++){
 System.out.println(arr[i]);
}

只要i小于arr的長(zhǎng)度4,就執(zhí)行循環(huán),需要注意的是,循環(huán)執(zhí)行完畢后,i=4,即雖然沒(méi)有執(zhí)行循環(huán),但i自增1。

初始值為空的情況:

int[] arr = {1,2,3,4};
int i=0;
for(;i<arr.length;i++){
 System.out.println(arr[i]);
}

 這是因?yàn)?,初始值在循環(huán)前已定義。

在for中,每個(gè)語(yǔ)句都是可以為空的,也就是說(shuō):

for(;;){}

  是有效的,這是個(gè)死循環(huán),只不過(guò)每次都沒(méi)有做任何事,相當(dāng)于python中每次執(zhí)行pass語(yǔ)句。

d、foreach

foreach的語(yǔ)法如下代碼所示:

int[] arr = {1,2,3,4};
for(int element : arr){
 System.out.println(element);
}

foreach使用冒號(hào) : ,冒號(hào)前面是循環(huán)中的每個(gè)元素,包括數(shù)據(jù)類(lèi)型和變量名稱(chēng),冒號(hào)后面是要遍歷的數(shù)組或集合,每次循環(huán)element都會(huì)自動(dòng)更新。

e、循環(huán)控制: 

 break;跳出本層循環(huán)。

    執(zhí)行break后,不再執(zhí)行循環(huán)的任何操作,初始值也不會(huì)自增。

  continue;跳出本次循環(huán),初始值自增,執(zhí)行下次循環(huán)。

三、python循環(huán)語(yǔ)句

 3.1 for 循環(huán)

a、

li=[1,2,3,4]
for i in li:
 print(i)

上述代碼中,i代表列表li的每一個(gè)元素。語(yǔ)法規(guī)則為for ...in ...,相當(dāng)于java中的foreach。

b、

li=[1,2,3,4]
for i,j in enumerate(li):
 print(i,j)

上述代碼中,i代表列表li的索引,j代表li的每一個(gè)元素。

注:索引默認(rèn)從0開(kāi)始,可設(shè)置 for i,j in enumerate(li,1):從而設(shè)置索引從1開(kāi)始。

c、

li1=[1,2,3,4]
li2=[4,5,6,7]
for i,j in zip(li1,li2):
 print(i,j)

上述代碼中,i代表列表li1的元素,j代表li2的元素。

d、

dic={'a':1,'b':2}
for k in dic:
 print(k)

上述代碼中,相當(dāng)于對(duì)字典的key進(jìn)行循環(huán),等價(jià)于下面的代碼:

dic={'a':1,'b':2}
for k in dic.keys():
 print(k)

e、

dic={'a':1,'b':2}
for k in dic.values():
 print(k)

上述代碼中,相當(dāng)于對(duì)字典的values進(jìn)行循環(huán)。

f、

dic={'a':1,'b':2}
for k,v in dic.items():
 print(k,v)

上述代碼中,k代表字典的key,v代表字典的value值。

3.2 while循環(huán)

 a、

i=1
while i:
 pass

上述代碼中,while i:即當(dāng)i為真值時(shí)執(zhí)行循環(huán),在python中除了none、空字符串、空列表、空字典、空元組、False,其他均為真值,即為T(mén)rue。

    b、

while True:
 pass

上述代碼適用于死循環(huán),即條件默認(rèn)為真。

c、其它通用while循環(huán):

while 條件:
 pass

據(jù)本人經(jīng)驗(yàn),python中如果需要將本來(lái)已經(jīng)false的條件作為循環(huán)條件,可以采取以下方案:

 方案一、

i=False
while i is not True:
 pass

或者:

i=False
while i is False:
 pass

  方案二、

i=False
while i ==False:
 pass

四、JavaScript循環(huán)語(yǔ)句

a、while循環(huán)

var cont=0;
while(cont<10){
 console.log(cont);
 cont++;
}

上述代碼可看出JavaScript while循環(huán)需要先給定初始值,每次判斷循環(huán)條件,條件為真執(zhí)行循環(huán),并在循環(huán)內(nèi)部對(duì)初始值進(jìn)行自增。

如果想生成死循環(huán),上述代碼可改成:

while(true){
 console.log(1);
 }

此時(shí),不需要設(shè)置初始值和自增。

b、do/while

JavaScript中do/while和java中do/while一樣,參考上文中java do/while。需要注意JavaScript中定義變量用var。

do{
 代碼塊;
}while(條件語(yǔ)句)

即,先執(zhí)行代碼塊,再判斷條件是否成立,成立則繼續(xù)執(zhí)行下次循環(huán),不成立退出循環(huán)。

c、for

var a=document.getElementById('k1').children;
for(var i=0;i< a.length;i++){
 var inp=a[i];
 var at=inp.getAttribute('type');
 if (at=='text')inp.setAttribute('value','123');
} 

上述代碼是獲取id='k1'下所有type='text'的標(biāo)簽并設(shè)置value值等于'123'.

d、for  in

var c1=document.getElementById('i1').getElementsByTagName('input');
 for(var i in c1){
 if(c1[i].checked)c1[i].checked=false;
 else c1[i].checked=true;
 }

上述代碼是找到所有的input標(biāo)簽,并對(duì)其進(jìn)行循環(huán),這里i代表索引,上述代碼操作的是反選復(fù)選框,如果被選上,擇設(shè)置該標(biāo)簽的checked=false,反之,設(shè)置為true;

五、jQuery循環(huán)語(yǔ)句

each語(yǔ)句:

$(':text').each(function(){
 console.log($(this).val()) ;
 });

語(yǔ)法規(guī)則:標(biāo)簽集合.each(匿名函數(shù));

  上述代碼的意思是:獲取所有inp標(biāo)簽中type='text',的標(biāo)簽,并對(duì)其進(jìn)行循環(huán),每次打印它的值。

     jQuery中跳出循環(huán)用return:

      return ture:退出本次循環(huán),執(zhí)行下次循環(huán),相當(dāng)于其它語(yǔ)言的continue;

      return false:退出本層循環(huán),即退出當(dāng)前each,相當(dāng)于其它語(yǔ)言的break;

 以上就是對(duì) Java、python、Javascript以及jquary 循環(huán)語(yǔ)句的資料整理,需要的朋友可以參考下.

相關(guān)文章

  • spring使用RedisTemplate的操作類(lèi)訪問(wèn)Redis

    spring使用RedisTemplate的操作類(lèi)訪問(wèn)Redis

    本篇文章主要介紹了spring使用RedisTemplate的操作類(lèi)訪問(wèn)Redis,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • MyBatis-Plus updateById不更新null值的方法解決

    MyBatis-Plus updateById不更新null值的方法解決

    用Mybatis-Plus的updateById()來(lái)更新數(shù)據(jù)時(shí),無(wú)法將字段設(shè)置為null值,更新后數(shù)據(jù)還是原來(lái)的值,本文就來(lái)詳細(xì)的介紹一下解決方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • Mac?Maven環(huán)境搭建安裝和配置超詳細(xì)步驟

    Mac?Maven環(huán)境搭建安裝和配置超詳細(xì)步驟

    這篇文章主要給大家介紹了關(guān)于Mac?Maven環(huán)境搭建安裝和配置的超詳細(xì)步驟,Maven是一種常用的Java構(gòu)建工具,它可以自動(dòng)化構(gòu)建、測(cè)試和打包Java項(xiàng)目,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • mybatis基本實(shí)例詳解

    mybatis基本實(shí)例詳解

    這篇文章主要介紹了mybatis基本實(shí)例詳解以及mybatis自由模糊查詢,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-03-03
  • Java查詢MongoDB數(shù)據(jù)庫(kù)案例大全

    Java查詢MongoDB數(shù)據(jù)庫(kù)案例大全

    這篇文章主要給大家介紹了關(guān)于Java查詢MongoDB數(shù)據(jù)庫(kù)的一些相關(guān)案例,Java可以使用MongoDB的官方Java驅(qū)動(dòng)程序來(lái)連接和操作MongoDB數(shù)據(jù)庫(kù),需要的朋友可以參考下
    2023-07-07
  • Java數(shù)組拷貝的幾種方法小結(jié)

    Java數(shù)組拷貝的幾種方法小結(jié)

    本文主要介紹了Java數(shù)組拷貝的幾種方法小結(jié),包括for循環(huán)、System.arraycopy()、Arrays.copyOf()、Arrays.copyOfRange()和clone()方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • SpringBoot的jar包如何啟動(dòng)的實(shí)現(xiàn)

    SpringBoot的jar包如何啟動(dòng)的實(shí)現(xiàn)

    本文主要介紹了SpringBoot的jar包如何啟動(dòng)的實(shí)現(xiàn),文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java使用JDBC連接postgresql數(shù)據(jù)庫(kù)示例

    Java使用JDBC連接postgresql數(shù)據(jù)庫(kù)示例

    這篇文章主要介紹了Java使用JDBC連接postgresql數(shù)據(jù)庫(kù),結(jié)合實(shí)例形式分析了jdbc連接postgresql數(shù)據(jù)庫(kù)及數(shù)值插入、更新、查詢等相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • freemarker?jsp?java內(nèi)存方式實(shí)現(xiàn)分頁(yè)示例

    freemarker?jsp?java內(nèi)存方式實(shí)現(xiàn)分頁(yè)示例

    這篇文章主要介紹了freemarker?jsp?java內(nèi)存方式實(shí)現(xiàn)分頁(yè)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • Spring配置文件解析之BeanDefinitionReader詳解

    Spring配置文件解析之BeanDefinitionReader詳解

    這篇文章主要介紹了Spring配置文件解析之BeanDefinitionReader詳解,ApplicationContext.xml配置文件解析成Document對(duì)象,真正對(duì)xml中元素解析的類(lèi)是在BeanDefinitionDocumentReader的實(shí)現(xiàn)類(lèi)中來(lái)完成的,需要的朋友可以參考下
    2024-02-02

最新評(píng)論