List、Set、数组之间的转换

 ★ 数组转Collectionjava

使用Apache Jakarta Commons Collections:apache

 
  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类:ide

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

不过Arrays.asList()方法返回的List不能add对象,由于该方法的实现是使用参数引用的数组的大小来new的一个ArrayList。spa

 

★ Collection转数组对象

直接使用Collection的toArray()方法,该方法有两个重载版本:element

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

 

★ Map转Collectionstring

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

 

★ List和Set转换io

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

相关文章
相关标签/搜索