1. 程式人生 > 實用技巧 >Java List 4

Java List 4

計算大小

如果要計算 ArrayList 中的元素數量可以使用 size() 方法:

例項

importjava.util.ArrayList;

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<String>sites=newArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
System.out.println(sites.size());
}
}

以上例項,執行輸出結果為:

4

迭代陣列列表

我們可以使用 for 來迭代陣列列表中的元素:

例項

importjava.util.ArrayList;

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<String>sites=newArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
for(inti=0;i<sites.size();i++){
System.out.println(sites.get(i));
}
}
}

以上例項,執行輸出結果為:

Google
Runoob
Taobao
Weibo

也可以使用 for-each 來迭代元素:

例項

importjava.util.ArrayList;

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<String>sites=newArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
for(Stringi:sites){
System.out.println(i);
}
}
}

以上例項,執行輸出結果為:

Google
Runoob
Taobao
Weibo

其他的引用型別

ArrayList 中的元素實際上是物件,在以上例項中,陣列列表元素都是字串 String 型別。

如果我們要儲存其他型別,而 <E> 只能為引用資料型別,這時我們就需要使用到基本型別的包裝類。

基本型別對應的包裝類表如下:

基本型別引用型別
boolean Boolean
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character

此外,BigInteger、BigDecimal 用於高精度的運算,BigInteger 支援任意精度的整數,也是引用型別,但它們沒有相對應的基本型別。

ArrayList<Integer> li=new Arraylist<>();     // 存放整數元素
ArrayList<Character> li=new Arraylist<>();   // 存放字元元素

以下例項使用 ArrayList 儲存數字(使用 Integer 型別):

例項

importjava.util.ArrayList;

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<Integer>myNumbers=newArrayList<Integer>();
myNumbers.add(10);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(25);
for(inti:myNumbers){
System.out.println(i);
}
}
}

以上例項,執行輸出結果為:

10
15
20
25

ArrayList 排序

Collections 類也是一個非常有用的類,位於 java.util 包中,提供的 sort() 方法可以對字元或數字列表進行排序。

以下例項對字母進行排序:

例項

importjava.util.ArrayList;
importjava.util.Collections;// 引入 Collections 類

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<String>sites=newArrayList<String>();
sites.add("Taobao");
sites.add("Wiki");
sites.add("Runoob");
sites.add("Weibo");
sites.add("Google");
Collections.sort(sites);// 字母排序
for(Stringi:sites){
System.out.println(i);
}
}
}

以上例項,執行輸出結果為:

Google
Runoob
Taobao
Weibo
Wiki

以下例項對數字進行排序:

例項

importjava.util.ArrayList;
importjava.util.Collections;// 引入 Collections 類

publicclassRunoobTest{
publicstaticvoidmain(String[]args){
ArrayList<Integer>myNumbers=newArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);

Collections.sort(myNumbers);// 數字排序

for(inti:myNumbers){
System.out.println(i);
}
}
}

以上例項,執行輸出結果為:

8
12
15
20
33
34