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)變量進(jì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)文章
詳解Java基礎(chǔ)篇--面向?qū)ο?(構(gòu)造方法,static、this關(guān)鍵字)
這篇文章主要介紹了Java基礎(chǔ)篇--面向?qū)ο?(構(gòu)造方法,static、this關(guān)鍵字),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
SpringBoot整合MongoDB實現(xiàn)文件上傳下載刪除
這篇文章主要介紹了SpringBoot整合MongoDB實現(xiàn)文件上傳下載刪除的方法,幫助大家更好的理解和學(xué)習(xí)使用SpringBoot框架,感興趣的朋友可以了解下2021-05-05
Java 向上轉(zhuǎn)型和向下轉(zhuǎn)型的詳解
這篇文章主要介紹了 Java 向上轉(zhuǎn)型和向下轉(zhuǎn)型的詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04
Java中使用LocalDate根據(jù)日期來計算年齡的實現(xiàn)方法
這篇文章主要介紹了Java中使用LocalDate根據(jù)日期來計算年齡的實現(xiàn)方法,需要的朋友可以參考下2018-01-01

