java—实现以下问题的解决方案的最简单和最简洁的方法是什么

ukqbszuj  于 2021-06-30  发布在  Java
关注(0)|答案(3)|浏览(214)

我已经得到了不同的汽车(年,型号)的数据形式的汽车,考虑到2个数据流进入我的系统。
输入数据:
(“2018”,“i20”)(“2018”,“zen”)(“2016”,“alto”)(“2015”,“k10”)(“2014”,“ertiga”)(“2016”,“i20”)
我需要实现的是,当用户输入一个有效的关键,如“2018”作为搜索关键字,他应该显示所有相关车型的排序顺序为该关键。
e、 g在这种情况下,“2018”的输出应该是:[i20,zen]
我知道在java中hashmap不能有重复的键,我也做了一些研究,这可以用multimap来实现,但是非常感谢这里的一些线索。

oknwwptz

oknwwptz1#

你可以输入值 Map<String, Set<TreeSet>> 哪里 TreeSet 保持你的价值排序

c86crjj0

c86crjj02#

将值放入 Map<String, List<String>> 并使用 get(String key)

r3i60tvu

r3i60tvu3#

是的,这可以使用com.google.common.collect.multimap实现。请尝试以下操作:

Multimap<String, String> cars = ArrayListMultimap.create();
cars.put("2018", "i20");
cars.put("2018", "zen");
cars.put("2016", "alto");
cars.put("2015", "k10");
cars.put("2014", "ertiga");
cars.put("2016", "i10");
System.out.println(cars.get("2018"));

如果您不想使用第三方库,可以使用

Map<String, List<String>>.

相关问题