値で並べ替える必要があるHashMapがあり、簡潔に保つようにしていますので、Java 8を使用しています。なぜわからないの?私はこれを試してみた:観測からの不一致があるなぜ私が見ることができないJavaで値でハッシュマップをソートする8
Main.java:65: error: no suitable method found for sorted(Comparator<Entry<Object,V#1>>)
.sorted(Map.Entry.comparingByValue())
:
followLikeCount.values()
.stream()
.sorted(Map.Entry.comparingByValue())
.collect(Collectors.toList());
このコンパイル時の例外がスローされますどの。私はまた、コンパレータを使用して試した:
Comparator<Map.Entry<Integer, Integer>> byValue =
Map.Entry.<Integer, Integer>comparingByValue();
これは、同様のエラーが発生します。なぜコンパレータが有効でないのかアドバイスできますか?
い '値()'のキー/値のペア、または単に値を持つ 'Entry'を返しますか? – markspace
ああ、値だけですが、HashMap followLikeCountをストリームに直接変換することはできません。全く別の方法が必要ですか? – Bryn
'entrySet()'を試してください。セットをストリーミングできます。 – markspace