Java基礎知識複習(八)-- 遍歷ArrayList的三種方法
阿新 • • 發佈:2019-01-02
第一種遍歷 普通for迴圈
可以用size()和get()分別得到大小,和獲取指定位置的元素,結合for迴圈就可以遍歷出ArrayList的內容
第二種遍歷,使用迭代器
從最開始的位置判斷"下一個"位置是否有資料,如果有就通過next取出來,並且把指標向下移動,直到"下一個"位置沒有資料
第三種,增強型for迴圈
用增強型for迴圈
使用增強型for迴圈可以非常方便的遍歷ArrayList中的元素,這是很多開發人員的首選。
不過增強型for迴圈也有不足:
1.無法用來進行ArrayList的初始化
2.無法得知當前是第幾個元素了,當需要只打印單數元素的時候,就做不到了。 必須再自定下標變數。
測試程式碼
package review5;
import java.awt.List;
import java.util.ArrayList;
import java.util.Iterator;
public class TestCollection {
public static void main(String[] args) {
ArrayList<String> str = new ArrayList<String>();
//放5個元素進入容器
for(int i = 0; i < 5; i++) {
str.add (new String(""+i));
}
// 第一種遍歷 普通for迴圈
System.out.println("========================for迴圈============================");
for(int i = 0; i < str.size(); i++) {
System.out.print(str.get(i)+"\t");
}
//第二種遍歷,使用迭代器
//從最開始的位置判斷"下一個"位置是否有資料
//如果有就通過next取出來,並且把指標向下移動
//直到"下一個"位置沒有資料
System. out.println("\n=================使用while的iterator====================");
Iterator<String> it = str.iterator();
while(it.hasNext()) {
System.out.print(it.next()+"\t");
}
System.out.println("\n==================使用for的iterator=====================");
for(Iterator<String> iterator = str.iterator();iterator.hasNext();) {
System.out.print(iterator.next()+"\t");
}
// 第三種,增強型for迴圈
// 用增強型for迴圈 頂 折 糾 問
// 使用增強型for迴圈可以非常方便的遍歷ArrayList中的元素,這是很多開發人員的首選。
//
// 不過增強型for迴圈也有不足:
// 無法用來進行ArrayList的初始化
// 無法得知當前是第幾個元素了,當需要只打印單數元素的時候,就做不到了。 必須再自定下標變數。
System.out.println("\n====================for的增強型遍歷==========================");
for(String s :str) {
System.out.print(s+"\t");
}
}
}