java list map set array 转换


1.list转set

  1. Set set = new HashSet(new ArrayList());   


2.set转list

  1. List list = new ArrayList(new HashSet());      


3.数组转为list

  1. List stooges = Arrays.asList("Larry", "Moe", "Curly");      


此时stooges中有有三个元素。注意:此时的list不能进行add操作,否则会报“java.lang.UnsupportedOperationException”,Arrays.asList()返回的是List,而且是一个定长的List,所以不能转换为ArrayList,只能转换为AbstractList 
原因在于asList()方法返回的是某个数组的列表形式,返回的列表只是数组的另一个视图,而数组本身并没有消失,对列表的任何操作最终都反映在数组上. 所以不支持remove,add方法的 

  1. String[] arr = {"1", "2"};      
  2. List list = Arrays.asList(arr);      
  3. String[] arr = {"1", "2"};      
  4. List list = Arrays.asList(arr);  


4.数组转为set

  1. int[] a = { 1, 2, 3 };      
  2.     
  3. Set set = new HashSet(Arrays.asList(a));    
  1. int[] a = { 1, 2, 3 };      
  2.     
  1. Set set = new HashSet(Arrays.asList(a));      


5.map的相关操作。

  1. Map map = new HashMap();      
  2.     
  3. map.put("1", "a");      
  4.     
  5. map.put('2', 'b');      
  6.     
  7. map.put('3', 'c');      
  8.     
  9. System.out.println(map);      
  10.     
  11. // 输出所有的值      
  12.     
  13. System.out.println(map.keySet());      
  14.     
  15. // 输出所有的键      
  16.     
  17. System.out.println(map.values());      
  18.     
  19. // 将map的值转化为List      
  20.     
  21. List list = new ArrayList(map.values());      
  22.     
  23. System.out.println(list);      
  24.     
  25. // 将map的值转化为Set      
  26.     
  27. Set set = new HashSet(map.values());      
  28.     
  29. System.out.println(set);      
  30.     
  31. Map map = new HashMap();      
  32.     
  33. map.put("1", "a");      
  34.     
  35. map.put('2', 'b');      
  36.     
  37. map.put('3', 'c');      
  38.     
  39. System.out.println(map);      
  40.     
  41. // 输出所有的值      
  42.     
  43. System.out.println(map.keySet());      
  44.     
  45. // 输出所有的键      
  46.     
  47. System.out.println(map.values());      
  48.     
  49. // 将map的值转化为List      
  50.     
  51. List list = new ArrayList(map.values());      
  52.     
  53. System.out.println(list);      
  54.     
  55. // 将map的值转化为Set      
  56.     
  57. Set set = new HashSet(map.values());      
  58.     
  59. System.out.println(set);      


6.list转数组

    1. List list = Arrays.asList("a","b");      
    2.     
    3. System.out.println(list);      
    4.     
    5.               
    6.     
    7. String[] arr = (String[])list.toArray(new String[list.size()]);      
    8.     
    9. System.out.println(Arrays.toString(arr));