Array、List、Set、Map相互之间的转换
1 import java.util.ArrayList; 2 import java.util.Arrays; 3 import java.util.HashMap; 4 import java.util.HashSet; 5 import java.util.List; 6 import java.util.Map; 7 import java.util.Set; 8 9 public class ConvertorTest { 10 11 public static void main(String[] args) { 12 testList2Array(); 13 testArray2List(); 14 15 testSet2List(); 16 testList2Set(); 17 18 testSet2Array(); 19 testArray2Set(); 20 21 testMap2Set(); 22 testMap2List(); 23 } 24 25 /** 26 * map-->list 27 */ 28 private static void testMap2List() { 29 Map<String, String> map = new HashMap<String, String>(); 30 map.put("A", "ABC"); 31 map.put("K", "KK@@"); 32 map.put("K", "34567");//覆盖 33 map.put("L", "LV"); 34 35 List<String> mapKeyList = new ArrayList<String>(map.keySet()); 36 System.out.println("map-->list,key:" + mapKeyList); 37 38 List<String> mapValueList = new ArrayList<String>(map.values()); 39 System.out.println("map-->list,value:" + mapValueList); 40 } 41 42 /** 43 * Map-->Set 44 */ 45 private static void testMap2Set() { 46 Map<String, String> map = new HashMap<String, String>(); 47 map.put("A", "ABC"); 48 map.put("K", "KK23"); 49 map.put("K", "KK");//覆盖 50 map.put("L", "LV"); 51 52 Set<String> mapKeySet = new HashSet<String>(map.keySet()); 53 System.out.println("Map-->Set,keySet" + mapKeySet); 54 55 Set<String> mapValueSet = new HashSet<String>(map.values()); 56 System.out.println("Map-->Set,valueSet" + mapValueSet); 57 58 } 59 60 /** 61 * 数组-->Set 62 */ 63 private static void testArray2Set() { 64 String[] arr = {"AA", "BB", "DD", "CC", "BB"}; 65 Set<String> set = new HashSet<String>(Arrays.asList(arr)); 66 System.out.println("数组-->Set:" + set); 67 } 68 69 /** 70 * set-->数组 71 */ 72 private static void testSet2Array() { 73 Set<String> set = new HashSet<String>(); 74 set.add("AA"); 75 set.add("AA"); 76 set.add("AA"); 77 set.add("BB"); 78 set.add("CC"); 79 80 String[] arr = new String[set.size()]; 81 82 set.toArray(arr); 83 System.out.println("set-->数组:" + Arrays.toString(arr)); 84 } 85 86 /** 87 * List-->Set 88 */ 89 private static void testList2Set() { 90 List<String> list = new ArrayList<String>(); 91 list.add("ABC"); 92 list.add("EFG"); 93 list.add("LMN"); 94 list.add("LMN"); 95 96 Set<String> listSet = new HashSet<String>(list); 97 System.out.println("List-->Set:" + listSet); 98 } 99 100 /** 101 * Set-->List 102 */ 103 private static void testSet2List() { 104 Set<String> set = new HashSet<>(); 105 set.add("AA"); 106 set.add("BB"); 107 set.add("BB");//去重 108 set.add("CC"); 109 110 List<String> setList = new ArrayList<String>(set); 111 System.out.println("Set-->List:" + setList); 112 } 113 114 /** 115 * 数组-->list 116 */ 117 private static void testArray2List() { 118 String[] ss = {"JJJ","KKKK"}; 119 List<String> list1 = Arrays.asList(ss); 120 List<String> list2 = Arrays.asList("AAA", "BBB"); 121 System.out.println("数组-->list:" + list1); 122 System.out.println("数组-->list:" + list2); 123 } 124 125 /** 126 * List-->数组 127 */ 128 private static void testList2Array() { 129 List<String> list = new ArrayList<String>(); 130 list.add("AAA"); 131 list.add("AAAA"); 132 list.add("BBB"); 133 list.add("CCC"); 134 Object[] objects = list.toArray(); 135 System.out.println("List-->数组:" + Arrays.toString(objects)); 136 137 String[] arr = new String[list.size()]; 138 list.toArray(arr); 139 System.out.println("String:" + Arrays.toString(arr)); 140 } 141 }
Java集合(Array,List,Set,Map之间转换的图形)