gpt4 book ai didi

java - 如何对从 HashMap 获得的字符串的 ArrayList 进行优先排序?

转载 作者:行者123 更新时间:2023-11-30 06:15:35 24 4
gpt4 key购买 nike

我有一个 ArrayList 的 ArrayList,在这些 ArrayList 中我存储字符串,我想根据存储在 HashMap 上的优先级对这些字符串进行排序。有没有一种有效的方法来简单地迭代它们来完成这个任务?

最佳答案

鉴于您有一个具有优先级的 HashMap,您可以执行以下操作:

List<List<String>> listList = new ArrayList<>();

List<String> listOne = Arrays.asList("A", "B", "C", "D");
List<String> listTwo = Arrays.asList("D", "D", "D", "B");

listList.add(listOne);
listList.add(listTwo);

Map<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 1);
map.put("D", 4);


listList.forEach(list -> list.sort(Comparator.comparingInt(map::get)));

请注意,要实现此功能,您必须将 Map 中列表中的所有字符串具有优先级,否则您将收到 NullPointerException

关于java - 如何对从 HashMap 获得的字符串的 ArrayList 进行优先排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49277408/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com