Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在LAMBDA中对列表重新排序?_Java_Lambda - Fatal编程技术网

Java 如何在LAMBDA中对列表重新排序?

Java 如何在LAMBDA中对列表重新排序?,java,lambda,Java,Lambda,我想先显示最高值,但先显示较低值: songs.entrySet() .stream() .sorted(Comparator.comparing(Map.Entry::getValue)) .forEach(songs -> System.out.println(songs.getKey() + " Rate:" + songs.getValue())); 我认为有一个比较器。反向可以改变你的测试感觉和排序顺序。你如何比较它们?我的意思是,如果你不给它任何

我想先显示最高值,但先显示较低值:

songs.entrySet()
     .stream()
     .sorted(Comparator.comparing(Map.Entry::getValue))
     .forEach(songs -> System.out.println(songs.getKey() + " Rate:" + songs.getValue()));

我认为有一个
比较器。反向
可以改变你的测试感觉和排序顺序。你如何比较它们?我的意思是,如果你不给它任何东西,它将使用默认值…还要注意,有
Map.Entry.comparingByValue()
(而不是
Comparator.comparing(Map.Entry::getValue)
)。