ハッシュの値でソートするには

ハッシュの値でソートする

以下の関数を適当にコピーし、不足したクラスを適宜importする。

	public static ArrayList<Map.Entry<String, Integer>> sortHash(HashMap<String, Integer> map){
		ArrayList<Map.Entry<String, Integer>> mapValuesList = new ArrayList<Map.Entry<String, Integer>>(map.entrySet());
 
		Collections.sort(mapValuesList, new Comparator<Map.Entry<String, Integer>>() {
			@Override
			public int compare(Map.Entry<String, Integer> entry1, Map.Entry<String, Integer> entry2) {
				return ((Integer) entry2.getValue()).compareTo((Integer) entry1.getValue());
			}
		});
		return mapValuesList;
	}

値でソートしたキーを得るには

		ArrayList<Map.Entry<String, Integer>> sortedList =sortHash(map); // mapがHashMap
		System.out.println(sortedList.get(0).getKey()); // ArrayListの一番最初の項目(0)に最も値の大きいKey/Valueのペアがくる。
  • ハッシュの値でソートするには.txt
  • 最終更新: 2019/07/15 02:46
  • by 127.0.0.1