posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          List、Set、數組之間的轉換

          Posted on 2008-03-02 17:48 semovy 閱讀(7658) 評論(2)  編輯  收藏 所屬分類: JAVA基礎

          數組轉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()方法的實現很簡單,只是循環使用了Collection的add()方法而已。

          如果只是想將數組轉換成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對象,因為該方法的實現是使用參數引用的數組的大小來new的一個ArrayList。

           

          Collection轉數組

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

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

           

          Map轉Collection

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

           

          List和Set轉換

          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));


          評論

          # re: List、Set、數組之間的轉換  回復  更多評論   

          2008-05-13 11:04 by suguobao
          贊一個,很好!繼續加油哦!

          # re: List、Set、數組之間的轉換  回復  更多評論   

          2009-06-03 17:08 by 小段
          非常好!
          主站蜘蛛池模板: 华池县| 临邑县| 满洲里市| 会同县| 扎鲁特旗| 招远市| 嵊州市| 夏津县| 台州市| 陈巴尔虎旗| 建水县| 迭部县| 钟山县| 和顺县| 陵川县| 鄯善县| 九江县| 大姚县| 西城区| 项城市| 湘西| 义乌市| 天峨县| 巴楚县| 榆树市| 祁阳县| 玉门市| 彰武县| 扎鲁特旗| 龙川县| 怀柔区| 通渭县| 屏东县| 汾阳市| 石台县| 怀来县| 成安县| 越西县| 林甸县| 法库县| 北川|