java中循環(huán)的幾種方式

一、for(;;)

1. 無限循環(huán)

無限循環(huán)在上篇提到,有for(;;)和while(true)兩種,
還有一種是for(;true;),應(yīng)該都會(huì)使用,這個(gè)不做解釋。
【轉(zhuǎn)】for(;;)和while(true)的區(qū)別

2.常用循環(huán)方法

這個(gè)不多做解釋,代碼如下:

public class ForDemo1 {
    public static void main(String[] args) {
        int[] arr = {1, 2, 4, 5};
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

3.兩個(gè)條件變量的循環(huán)

代碼如下:

public class ForDemo2 {
    public static void main(String[] args) {
        for (int i=0, j=0;i<2&& j<3;i++,j++) {
            System.out.println("hello world");
        }
    }
}

運(yùn)行結(jié)果是輸出兩次hello world 。

有興趣的可以把i<2&&j<3改為i<2&j<3看看結(jié)果會(huì)是什么?

二、for(:)

先上代碼:

public class ForDemo3 {
    public static void main(String[] args) {
        int[] a = {2, 3, 4, 5, 6};
        for (int i : a) {
            System.out.println(i);
        }
    }
}

for(int i:a)解釋是:先設(shè)置一個(gè)與a數(shù)組里的元素相同的變量,這個(gè)變量先等于a數(shù)組的第一個(gè)元素,然后進(jìn)入循環(huán)體,第二次循環(huán)就等于a數(shù)組的第二個(gè)元素,進(jìn)入循環(huán)體,以此類推。

三、while嵌套for循環(huán)

while循環(huán)也就不說了吧,就展示一下while嵌套for循環(huán),代碼如下:

ublic class WhileDemo {
    public static void main(String[] args) {
        int a=1;
        while(a<9){
            if (a==3){
                System.out.println(a);
                break;
            }else {
                System.out.println(a);
            }
            a++;
        }
    }
}

這個(gè)運(yùn)行結(jié)果是1 2 3,看不懂還是去Debug看一下a的值是如何變化的。

四、遍歷Collection對(duì)象的方式

import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;

public class ForDemo4 {
    public static void main(String[] args) {
        String[] a = {"A", "B", "C", "D"};
        Collection stringList = Arrays.asList(a);
        for(Iterator i = stringList.iterator(); i.hasNext();){
            Object j = i.next();
            System.out.println(j);
        }
    }
}

java.util.Collection 是一個(gè)集合接口(集合類的一個(gè)頂級(jí)接口)。它提供了對(duì)集合對(duì)象進(jìn)行基本操作的通用接口方法。Collection接口在Java 類庫中有很多具體的實(shí)現(xiàn)。Collection接口的意義是為各種具體的集合提供了最大化的統(tǒng)一操作方式。其中Iterator就是這個(gè)接口中的一種方法,學(xué)java的人都熟悉,叫迭代器,i.hasNext()方法返回值是boolean類型,若為true則表示迭代器下一個(gè)有值,否則表示迭代完成;i.next()返回值是一個(gè)object類型,表示取出迭代器下一個(gè)值并賦值給“=”之前。所以就能夠給for循環(huán)提供循環(huán)的條件了。

還有一個(gè)嵌套for循環(huán)在后面數(shù)組再說吧。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,739評(píng)論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,837評(píng)論 18 139
  • 你喜歡的別太喜歡,討厭的別太討厭。
    伍丁零閱讀 182評(píng)論 0 2
  • 相關(guān)文章 博客原文我的前端規(guī)范——開篇我的前端規(guī)范——HTML篇我的前端規(guī)范——CSS篇我的前端規(guī)范——JavaS...
    前端路上的小兵閱讀 440評(píng)論 0 2
  • 近一個(gè)月沒去學(xué)古箏了,本想順便停掉不學(xué)了,以便有多點(diǎn)的讀經(jīng)時(shí)間,誰知女兒突然又想去學(xué)了,并保證一定好好學(xué)好好...
    日出東方_Emma閱讀 329評(píng)論 0 1