将HashMap <String,LinkedHashSet <String >>转换为HashMap <String,List <String >>

时间:2019-10-09 12:25:39

标签: java hashmap linkedhashset

我想将HashMap<String, LinkedHashSet<String>>转换为HashMap<String, List<String>>,以便可以打印其所有索引。

我只想存储以字母开头的“字符串”列表中的不同值。

例如 我有此列表(listOfFruits):

a.apple
c.banana
b.orange
c.mango
b.pear
a.lemon
b.orange
c.mango
c.apple

我想要这个输出:

a.1
c.1
b.1
c.2
b.2
a.2
b.1
c.3
c.2

这意味着:

  • 在(a)框中,我有2个索引分别为1和2的对象。
  • 在(b)框中,我有1个具有索引1和1的对象。
  • 在(c)框中,我有3个具有索引1、2、2和3的对象

我想我可以将它们放入HashMap中以找到不同的水果,然后将其转换为列表以获取其索引。

HashMap<String, LinkedHashSet<String>> myMap1 = new HashMap<>();
for (String string.split("\\.")[0] : listOfFruits) {
     myMap1.computeIfAbsent(string , k -> new LinkedHashSet<()).add(string.split("\\.")[1]);
}

我正确处理了吗? 非常感谢您的帮助。

0 个答案:

没有答案