gpt4 book ai didi

java - 按嵌套 Map 内的嵌套数组大小排序

转载 作者:行者123 更新时间:2023-12-01 10:00:16 31 4
gpt4 key购买 nike

大家好,我的任务是按嵌套数组大小/长度的降序对 Java Map 进行排序,但嵌套数组位于嵌套 Map 内部。结构如下:

HashMap<String, HashMap<String, ArrayList<String>>> classes = new HashMap<>();

我正在使用 lambda 并尝试了许多变体,包括:

classes.entrySet().stream()
.sorted((k1, k2) -> Long.compare(classes.get(k2.getKey()).entrySet().stream().count(), classes.get(k1.getKey()).entrySet().stream().count()))

classes.entrySet().stream()
.sorted((k1, k2) -> Integer.compare(k2.getValue().values().size(), k1.getValue().values().size()))

但没有任何运气。由于数据的性质,我无法使用其他数据结构,因此我必须坚持使用这个数据结构。

有什么想法为什么我的排序失败吗?感谢您的帮助,我很感激。

最佳答案

希望我没有说显而易见的事情,但鉴于您提供的信息,我假设您期望 .sorted() 对原始集合进行排序。

因为你正在使用 原始集合不会被修改。 .sorted()返回一个新集合。使用其结果。

关于java - 按嵌套 Map 内的嵌套数组大小排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36864573/

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