質問: new Item(st[0], st[1], st[2]); itemList.add(item); //リストに追加する cat_num.merge(car.catname, 1, Integer::sum); outputLine.println(item); } } catch (IOException e) { System.out.println("ファイルが開けません"); } for(Entry entry : cat_num.entrySet()){ System.out.println(entry.getKey() + ":" + entry.getValue()); } //ご回答いただいたコード cat_num.entrySet() .stream() .sorted(Collections.reverseOrder(Map.Entry.comparingByValue())) //valueの降順にする .limit(5) //上位5位まで(適宜直してください) .forEach(e -> System.out.println(e.getKey() + ":" + e.getValue())); //結果出力 } } ``` ### 補足情報(FW/ツールのバージョンなど) Eclipse Java EE IDE for Web Developers. Version: Oxygen.3a Release (4.7.3a) Microsoft Excel for Mac バージョン16.13 Javaバージョン(java.version):1.8.0_152 オペレーティングシステム名(os.name):Mac OS X
回答: HashMapのValueをソートキーにして降順で出力したい、ということであれば、 ``` map.entrySet() .stream() .sorted(Collections.reverseOrder(Map.Entry.comparingByValue())) //valueの降順にする .limit(5) //上位5位まで(適宜直してください) .forEach(e -> System.out.println(e.getKey() + ":" + e.getValue())); //結果出力 ``` これでできると思います。