我需要将按关键字分组的多个条目存储到一个集合中。
- 组1
- 条目1
- 条目2
- 组2
- 条目3
- 条目4
- 条目5
- 组3
- 条目6
- 条目7
所以我认为,我需要一个这样的结构
[group1[entry1,entry2],group2[entry3,entry4,entry5],group3[entry6,entry7]]
嵌套数组是正确的选择吗?
最佳答案
您可以使用 map
。
TreeMap
将使用Comparator
或按键的自然顺序对组进行排序。在此示例中,组将按组名称的字母顺序排序。
Map<String, List<String>> map = new TreeMap<>();
map.put("Group1", new ArrayList<>(Arrays.asList("Entry1", "Entry2")));
map.put("Group2", new ArrayList<>(Arrays.asList("Entry3", "Entry4", "Entry5")));
map.put("Group3", new ArrayList<>(Arrays.asList("Entry6", "Entry7")));
System.out.println(map);
如果你想获取特定组的条目,你可以这样做
List<String> list = map.get("Group2");
您可能希望这些组按照您在 map
中放置的顺序排列。在这种情况下,您应该使用 LinkedHashMap
而不是 TreeMap
。
关于java - 将多个组存储到集合中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33058347/