Java 集合转换(Object[]数组、List、Set、Map相互转换)

红太狼 2022-05-26 10:38 393阅读 0赞
  1. package com.example.test;
  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.HashMap;
  5. import java.util.HashSet;
  6. import java.util.List;
  7. import java.util.Map;
  8. import java.util.Set;
  9. public class ConvertorTest {
  10. /**
  11. * @param args
  12. */
  13. public static void main(String[] args) {
  14. testList2Array();
  15. testArray2List();
  16. testSet2List();
  17. testList2Set();
  18. testSet2Array();
  19. testArray2Set();
  20. testMap2Set();
  21. testMap2List();
  22. }
  23. private static void testMap2List() {
  24. Map<String, String> map = new HashMap<String, String>();
  25. map.put("A", "ABC");
  26. map.put("K", "KK");
  27. map.put("L", "LV");
  28. // 将Map Key 转化为List
  29. List<String> mapKeyList = new ArrayList<String>(map.keySet());
  30. System.out.println("mapKeyList:"+mapKeyList);
  31. // 将Map value 转化为List
  32. List<String> mapValuesList = new ArrayList<String>(map.values());
  33. System.out.println("mapValuesList:"+mapValuesList);
  34. }
  35. private static void testMap2Set() {
  36. Map<String, String> map = new HashMap<String, String>();
  37. map.put("A", "ABC");
  38. map.put("K", "KK");
  39. map.put("L", "LV");
  40. // 将Map 的键转化为Set
  41. Set<String> mapKeySet = map.keySet();
  42. System.out.println("mapKeySet:"+mapKeySet);
  43. // 将Map 的值转化为Set
  44. Set<String> mapValuesSet = new HashSet<String>(map.values());
  45. System.out.println("mapValuesSet:"+mapValuesSet);
  46. }
  47. private static void testArray2Set() {
  48. String[] arr = {"AA","BB","DD","CC","BB"};
  49. //数组-->Set
  50. Set<String> set = new HashSet<String>(Arrays.asList(arr));
  51. System.out.println(set);
  52. }
  53. private static void testSet2Array() {
  54. Set<String> set = new HashSet<String>();
  55. set.add("AA");
  56. set.add("BB");
  57. set.add("CC");
  58. String[] arr = new String[set.size()];
  59. //Set-->数组
  60. set.toArray(arr);
  61. System.out.println(Arrays.toString(arr));
  62. }
  63. private static void testList2Set() {
  64. List<String> list = new ArrayList<String>();
  65. list.add("ABC");
  66. list.add("EFG");
  67. list.add("LMN");
  68. list.add("LMN");
  69. //List-->Set
  70. Set<String> listSet = new HashSet<String>(list);
  71. System.out.println(listSet);
  72. }
  73. private static void testSet2List() {
  74. Set<String> set = new HashSet<String>();
  75. set.add("AA");
  76. set.add("BB");
  77. set.add("CC");
  78. //Set --> List
  79. List<String> setList = new ArrayList<String>(set);
  80. System.out.println(setList);
  81. }
  82. private static void testList2Array() {
  83. //List-->数组
  84. List<String> list = new ArrayList<String>();
  85. list.add("AA");
  86. list.add("BB");
  87. list.add("CC");
  88. Object[] objects = list.toArray();//返回Object数组
  89. System.out.println("objects:"+Arrays.toString(objects));
  90. String[] arr = new String[list.size()];
  91. list.toArray(arr);//将转化后的数组放入已经创建好的对象中
  92. System.out.println("strings1:"+Arrays.toString(arr));
  93. }
  94. private static void testArray2List() {
  95. //数组-->List
  96. String[] ss = {"JJ","KK"};
  97. List<String> list1 = Arrays.asList(ss);
  98. List<String> list2 = Arrays.asList("AAA","BBB");
  99. System.out.println(list1);
  100. System.out.println(list2);
  101. }
  102. }

发表评论

表情:
评论列表 (有 0 条评论,393人围观)

还没有评论,来说两句吧...

相关阅读