Java中的Set List HashSet互转

Java中的List、Set互转

因为List和Set都实现了Collection接口,且addAll(Collection<? extends E> c);方法,因此可以采用addAll()方法将List和Set互相转换;另外,List和Set也提供了Collection<? extends E> c作为参数的构造函数,因此通常采用构造函数的形式完成互相转化。

 

 1  public static void main(String[]args){
 2         String[] array = {"A", "B", "C", "D"};
 3         //1-1、数组转List
 4         //需要注意的是, Arrays.asList() 返回一个受指定数组决定的固定大小的列表。
 5         // 所以不能做 add 、 remove 等操作,否则会报错。
 6         List list1= Arrays.asList(array);
 7         //1-2、数组转HashSet
 8         Set<String> set1=new HashSet<>(Arrays.asList(array));
 9         //2-1、List转数组
10         List<String> list2=Arrays.asList("Tom","John","Lily");
11         Object []array1=list2.toArray();
12         //2-2、List转HashSet
13         List<String> list3=Arrays.asList("Tom","John","Lily");
14         Set<String> set2=new HashSet<>(list3);
15         //3-1、set转数组
16         String[] array4 = {"K", "J", "P", "U"};
17         Set<String> set4=new HashSet<>(Arrays.asList(array4));
18         Object[] array5=set4.toArray();
19         //3-2、set转List
20         List<String> list=new ArrayList<>(set4);
21     }
原文地址:https://www.cnblogs.com/LifeFruit/p/13856037.html