首先ArrayList的一個簡單實例:
1 package chapter11; 2 import java.util.ArrayList; 3 4 public class TestArrayList { 5 6 public static void main(String[] args) { 7 // TODO Auto-generated method stub 8 ArrayList<String> cityList=new ArrayList<String>(); 9 cityList.add("London"); 10 cityList.add("Denver"); 11 cityList.add("Paris"); 12 cityList.add("Miami"); 13 cityList.add("Seoul"); 14 cityList.add("Tokyo"); 15 16 System.out.println("List size is "+cityList.size()+ 17 "\nIs Miami in the list? "+cityList.contains("Miami")+ 18 "\nThe location of Denver in the list? "+cityList.indexOf("Denver")+ 19 "\nIs the list empty? "+cityList.isEmpty()); 20 21 cityList.add(2, "Xian"); 22 cityList.remove("Miami"); 23 cityList.remove(1); 24 25 System.out.println(cityList.toString()); 26 27 for(int i=cityList.size()-1;i>=0;i--){ 28 System.out.print(cityList.get(i)+" "); 29 } 30 System.out.println(); 31 32 33 34 35 } 36 37 }
一開始定義cityList的時候,並沒有使用泛型<String>,后來Eclipse提示警告,才增加的。
所以這里存在一個問題,定義ArrayList的時候,一定要定義出這個List包含的數據類型么?
經過搜索學習,發現ArrayList可以同時存放不同類型的數據(早期還有這樣的應用,但是現在很少了)。不定義存儲類型的話,都是以Object執行裝箱操作,拿出來也要拆箱。比較麻煩。
最好一個ArrayList中只存儲同一種類型。
