我实际上能够仅Map根据Key和value对它们进行排序,我什至尝试对它们进行如下排序:
我根据国家对学生进行排序,如果两个学生碰巧相同states,则StudentID仅在匹配的国家中排序。
到目前为止我已经尝试过:
final Map<Integer, String> studentMaster = new HashMap<>() {{
put(146, "Sweden");
put(148, "Sweden");
put(110, "Orebro");
put(6, "Malmo");
put(14, "Orebro");
put(26, "Malmo");
}
};
studentMaster.entrySet().stream()
.sorted((i1,i2)->i1.getValue().compareTo(i2.getValue()))
.sorted((j1,j2)->j1.getKey().compareTo(j2.getKey()))
.forEach(System.out::println);
我得到的结果**(实际输出)**
14=Orebro
26=Malmo
110=Orebro
146=Sweden
148=Sweden
预期输出:
26=Malmo
14=Orebro
110=Orebro
146=Sweden
148=Sweden
米脂
largeQ
MMTTMM
相关分类