电竞比分网-中国电竞赛事及体育赛事平台

分享

List、Set、數(shù)組之間的轉(zhuǎn)換

 iversion 2008-01-09
List、Set、數(shù)組之間的轉(zhuǎn)換
2007年12月30日 星期日 23:19

數(shù)組轉(zhuǎn)Collection

使用Apache Jakarta Commons Collections:

  1. import org.apache.commons.collections.CollectionUtils;   
  2.   
  3. String[] strArray = {"aaa", "bbb", "ccc"};   
  4. List strList = new ArrayList();   
  5. Set strSet = new HashSet();   
  6. CollectionUtils.addAll(strList, strArray);   
  7. CollectionUtils.addAll(strSet, strArray);  

CollectionUtils.addAll()方法的實現(xiàn)很簡單,只是循環(huán)使用了Collection的add()方法而已。

如果只是想將數(shù)組轉(zhuǎn)換成List,可以用JDK中的java.util.Arrays類:

  1. import java.util.Arrays;   
  2.   
  3. String[] strArray = {"aaa", "bbb", "ccc"};   
  4. List strList = Arrays.asList(strArray);  

不過Arrays.asList()方法返回的List不能add對象,因為該方法的實現(xiàn)是使用參數(shù)引用的數(shù)組的大小來new的一個ArrayList。

 

Collection轉(zhuǎn)數(shù)組

直接使用Collection的toArray()方法,該方法有兩個重載版本:

  1. Object[] toArray();   
  2.   
  3. T[] toArray(T[] a);  

 

Map轉(zhuǎn)Collection

直接使用Map的values()方法。

 

List和Set轉(zhuǎn)

List list = new ArrayList(new Hashset());// Fixed-size list
List list = Arrays.asList(array);// Growable
list list = new LinkedList(Arrays.asList(array));// Duplicate elements are discarded
Set set = new HashSet(Arrays.asList(array));

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多