ArrayList 和 Array 相互轉換

今天在寫一段多線程的程序時候遇到一個參數轉換的問題,即要把一個ArrayList對象轉換爲一個String數組, 找到一個不錯的方法:

ArrayList有一個toArray()的方法可以完成我們的需求,請看下面的例子

  1. List<String> list = new ArrayList<String>(); 
  2.   
  3. list.add("India"); 
  4. list.add("Switzerland"); 
  5. list.add("Italy"); 
  6. list.add("France"); 
  7.   
  8. String [] countries = list.toArray(new String[list.size()]); 
如果考慮到泛型的話,可以用下面的代碼將任何類型的ArrayList轉換成數組
 
  1. List<T> list = new ArrayList<T>(); 
  2.   
  3. T [] countries = list.toArray(new T[list.size()]); 

下面我們再看看怎麼樣把數組對象轉換爲ArrayList,

  1. import java.util.ArrayList; 
  2. import java.util.List; 
  3. import java.util.Arrays; 
  4.   
  5. ... 
  6.   
  7. String[] countries = {"India""Switzerland""Italy""France"}; 
  8. List list = new Arrays(Arrays.asList(countries)); 
  9. System.out.println("ArrayList of Countries:" + list); 

參考:http://viralpatel.net/blogs/2009/06/convert-arraylist-to-arrays-in-java.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章