将多个组存储到集合中

Store multiple groups into collection

我需要将几个按关键字分组的条目存储到一个集合中。

所以我想,我需要这样的结构

[group1[entry1,entry2],group2[entry3,entry4,entry5],group3[entry6,entry7]]

嵌套数组是正确的选择吗?

你可以使用 Map.

A 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.