對于java中的for循環,我們用的最多的無非就是下面這個語句:
for (int i = 0; i < 10; i++) { System.err.println(i);}
但是對于for循環來說,它也有很多變體,如果不清楚了解for循環的結構原理,遇上一些變體的for循環,可能一時不太明白它的含義,for循環雖然有很多變體,但都離不開括號內3條語句的模式(除了增強for循環模式,后面再討論)
for循環的結構:
for(語句A; 語句B; 語句C){ //循環體}
其中,語句A在整個循環過程中,只會執行一次;語句B必須是布爾類型的表達式(當然也可以不寫,如果寫就必須是布爾類型表達式),通過該布爾表達式去判斷是否繼續執行循環體;語句C會在每次循環結束后執行,也就是說,循環體執行多少次,語句C就會執行多少次。
其中語句的執行順序是:
語句A→(語句B → 循環體 → 語句C)→(語句B → 循環體 → 語句C)→ ... →退出循環
下面簡單介紹一些for循環的變體:
變體一:語句豐富化多樣化,只要保證語句A、C都是一條語句,語句B是布爾表達式,語句想怎么寫由你自己定。
for (int i = 0, j = 0; i < 10 | j< 12; i++, j++) { System.err.println(i); System.err.println(j); System.err.println("=========");}
變體二:語句A省略
boolean flag = true;int m = 0;for (;flag; m++){ if (m==10) flag=false; System.err.println(m);}
變體三:語句B省略,此時只有從循環體內退出循環,否則是無限循環。
int m = 0;for (;; m++){ if (m==10) break; System.err.println(m);}
變體四:語句C省略
int m = 0;for (;;){ if (m==10) break; System.err.println(m); m++;}
說明:以上的變體,只是相對于我們常用的形式來講的,變體的結構本質是不變的,我們沒必要去刻意的使用變體的形式。之所以提出來講,只是希望以后遇到變體的情況,能盡快看懂循環的含義,不至于看到別人寫的代碼,和自己寫的方式不一樣,然后一臉蒙圈。上面并未列出所有變體,簡單來說,語句A,B,C都是可以單獨省略的。
對于增強for循環,就不多做介紹了,用的也比較多,基本結構就是:
Integer[] arr = new Integer[]{1,2,3,4};for (Integer a : arr){ System.err.println(a);} List<String> list = new ArrayList<>();//add str...for (String str : list){ System.err.println(str);}
以上所述是小編給大家介紹的Java for循環詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
新聞熱點
疑難解答
圖片精選