通過一個實例介紹 ArrayList 中常用API的用法

import java.util.*;
 2 
 3 /*
 4  * @desc ArrayList常用API的測試程序
 5  * @author skywang 
 6  * @email [email protected]
 7  */
 8 public class ArrayListTest {
 9 
10     public static void main(String[] args) {
11         
12         // 創建ArrayList
13         ArrayList list = new ArrayList();
14 
15         // 將“”
16         list.add("1");
17         list.add("2");
18         list.add("3");
19         list.add("4");
20         // 將下面的元素添加到第1個位置
21         list.add(0, "5");
22 
23         // 獲取第1個元素
24         System.out.println("the first element is: "+ list.get(0));
25         // 刪除“3”
26         list.remove("3");
27         // 獲取ArrayList的大小
28         System.out.println("Arraylist size=: "+ list.size());
29         // 判斷list中是否包含"3"
30         System.out.println("ArrayList contains 3 is: "+ list.contains(3));
31         // 設置第2個元素爲10
32         list.set(1, "10");
33 
34         // 通過Iterator遍歷ArrayList
35         for(Iterator iter = list.iterator(); iter.hasNext(); ) {
36             System.out.println("next is: "+ iter.next());
37         }
38 
39         // 將ArrayList轉換爲數組
40         String[] arr = (String[])list.toArray(new String[0]);
41         for (String str:arr)
42             System.out.println("str: "+ str);
43 
44         // 清空ArrayList
45         list.clear();
46         // 判斷ArrayList是否爲空
47         System.out.println("ArrayList is empty: "+ list.isEmpty());
48     }
49 }

the first element is: 5Arraylist size=: 4ArrayList contains 3 is: falsenext is: 5next is: 10next is: 2next is: 4str: 5str: 10str: 2str: 4

ArrayList is empty: true

ArrayList支持3種遍歷方式

(01) 第一種,通過迭代器遍歷。即通過Iterator去遍歷。

Integer value = null;
Iterator iter = list.iterator();
while (iter.hasNext()) {
    value = (Integer)iter.next();
}

(02) 第二種,隨機訪問,通過索引值去遍歷。
由於ArrayList實現了RandomAccess接口,它支持通過索引值去隨機訪問元素。

Integer value = null;
int size = list.size();
for (int i=0; i<size; i++) {
    value = (Integer)list.get(i);        
}

(03) 第三種,for循環遍歷。如下:

Integer value = null;
for (Integer integ:list) {
    value = integ;
}
遍歷ArrayList時,使用隨機訪問(即,通過索引序號訪問)效率最高,而使用迭代器的效率最低!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章