JAVA中的for循環(huán)幾種使用方法講解
一般寫法
1.遍歷數(shù)組的傳統(tǒng)方式
/* 建立一個數(shù)組 */
int [] integers={1,2,3,4};
/* 開始遍歷 */
for (int j=0;j<integers.length;j++){
int i = integers[j];
System.out.println(i);
}
2.遍歷Collection對象的傳統(tǒng)方式
/* 建立一個Collection */
String[] strings = {"A", "B", "C", "D"};
Collection stringList = java.util.Arrays.asList(strings);
/* 開始遍歷 */
for (Iterator itr = stringList.iterator(); itr.hasNext();) {
Object str = itr.next();
System.out.println(str);
}
第二種寫法
for (循環(huán)變量類型 循環(huán)變量名稱 : 要被遍歷的對象) 循環(huán)體
3.遍歷數(shù)組的簡單方式
/* 建立一個數(shù)組 */
int[] integers = {1, 2, 3, 4};
/* 開始遍歷 */
for (int i : integers) {
System.out.println(i); /* 依次輸出“1”、“2”、“3”、“4” */
}
遍歷數(shù)組的簡單方式的等價代碼
/* 建立一個數(shù)組 */
int[] integers = {1, 2, 3, 4};
/* 開始遍歷 */
for (int 變量名甲 = 0; 變量名甲 < integers.length; 變量名甲++) {
System.out.println(integers[變量名甲]); /* 依次輸出“1”、“2”、“3”、“4” */
}
4.遍歷Collection的簡單方式
/* 建立一個Collection */
String[] strings = {"A", "B", "C", "D"};
Collection list = java.util.Arrays.asList(strings);
/* 開始遍歷 */
for (Object str : list) {
System.out.println(str); /* 依次輸出“A”、“B”、“C”、“D” */
}
遍歷數(shù)組的簡單方式的等價代碼
/* 建立一個Collection */
String[] strings = {"A", "B", "C", "D"};
Collection stringList = java.util.Arrays.asList(strings);
/* 開始遍歷 */
for (Iterator 變量名乙 = list.iterator(); 變量名乙.hasNext();) {
Object str = 變量名乙.next();
System.out.println(str); /* 依次輸出“A”、“B”、“C”、“D” */
}
防止在循環(huán)體里修改循環(huán)變量
5.禁止重新賦值
int[] integers = {1, 2, 3, 4};
for (final int i : integers) {
i = i / 2; /* 編譯時出錯 */
}
這只是禁止了對循環(huán)變量進行重新賦值。給循環(huán)變量的屬性賦值,或者調(diào)用能讓循環(huán)變量的內(nèi)容變化的方法,是不被禁止的。

6.允許修改狀態(tài)
Random[] randoms = new Random[]{new Random(1),new Random(2), new Random(3)};
for (final Random r : randoms) {
r.setSeed(4); /* 將所有Random對象設(shè)成使用相同的種子 */
System.out.println(r.nextLong()); /* 種子相同,第一個結(jié)果也相同 */
}
類型相容問題
7.使用和要被遍歷的數(shù)組中的元素相同類型的循環(huán)變量
int[] integers = {1, 2, 3, 4};
for (int i : integers) {
System.out.println(i); /* 依次輸出“1”、“2”、“3”、“4” */
}
8.使用和要被遍歷的Collection中的元素相同類型的循環(huán)變量
Collection< String> strings = new ArrayList< String>();
strings.add("A");
strings.add("B");
strings.add("C");
strings.add("D");
for (String str : strings) {
System.out.println(str); /* 依次輸出“A”、“B”、“C”、“D” */
}
循環(huán)變量的類型可以是要被遍歷的對象中的元素的上級類型。 例如,用int型的循環(huán)變量來遍歷一個byte[]型的數(shù)組,用Object型的循環(huán)變量來遍歷一個Collection< String>(全部元素都是String的Collection)等。
9.使用要被遍歷的對象中的元素的上級類型的循環(huán)變量
String[] strings = {"A", "B", "C", "D"};
Collection< String> list = java.util.Arrays.asList(strings);
for (Object str : list) {
System.out.println(str);/* 依次輸出“A”、“B”、“C”、“D” */
}
10.使用能和要被遍歷的對象中的元素的類型自動轉(zhuǎn)換的類型的循環(huán)變量
int[] integers = {1, 2, 3, 4};
for (Integer i : integers) {
System.out.println(i); /* 依次輸出“1”、“2”、“3”、“4” */
}
注意,這里說的“元素的類型”,是由要被遍歷的對象的決定的――如果它是一個Object[]型的數(shù)組,那么元素的類型就是Object,即使里面裝的都是String對象也是如此。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis group by substr函數(shù)傳參報錯的解決
這篇文章主要介紹了mybatis group by substr函數(shù)傳參報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01
JavaEE Spring MyBatis如何一步一步實現(xiàn)數(shù)據(jù)庫查詢功能
這篇文章主要介紹了JavaEE Spring MyBatis如何一步一步實現(xiàn)數(shù)據(jù)庫查詢功能,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
java驗證用戶是否已經(jīng)登錄 java實現(xiàn)自動登錄
這篇文章主要介紹了java驗證用戶是否已經(jīng)登錄,java實現(xiàn)自動登錄,感興趣的小伙伴們可以參考一下2016-04-04
Java 實戰(zhàn)項目錘煉之仿天貓網(wǎng)上商城的實現(xiàn)流程
讀萬卷書不如行萬里路,只學(xué)書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+jsp+servlet+mysql+ajax實現(xiàn)一個仿天貓網(wǎng)上商城項目,大家可以在過程中查缺補漏,提升水平2021-11-11
Java Process與Runtime()的使用及調(diào)用cmd命令阻塞的解決方案
這篇文章主要介紹了Java Process與Runtime()的使用及調(diào)用cmd命令阻塞的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06
java實現(xiàn)學(xué)生教師管理系統(tǒng)
這篇文章主要為大家詳細介紹了java實現(xiàn)學(xué)生教師管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-10-10

