package com.example.game2d; import android.os.Build; import androidx.annotation.RequiresApi; import java.util.ArrayList; import java.util.Collections; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; // https://stackoverflow.com/questions/109383/sort-a-mapkey-value-by-values public class MapUtil { @RequiresApi(api = Build.VERSION_CODES.N) public static > Map sortByValue(Map map) { List> list = new ArrayList<>(map.entrySet()); list.sort(Collections.reverseOrder(Map.Entry.comparingByValue())); Map result = new LinkedHashMap<>(); for (Map.Entry entry : list) { result.put(entry.getKey(), entry.getValue()); } return result; } }