HashMap排序

1、HashMap本身是无序的,不能直接对其排序

2、要排序的话,只能先转换成List,然后对List进行排序,最后再转换成LinkedHashMap

3、这样做就完全是自定义排序,可以做多key排序,也可以做多value排序

HashMap paramMap= new HashMap();
map.put("b", 1);
map.put("a", 2);
map.put("d", 3);
map.put("c", 4);

		List> paramList = new ArrayList<>(paramMap.entrySet());
		Collections.sort(paramList, ((o1, o2) -> {
			return o1.getKey().compareTo(o2.getKey());
		}));
		LinkedHashMap sortParamMap = new LinkedHashMap<>();
		paramList.forEach(o -> {
			sortParamMap.put(o.getKey(), o.getValue());
		});

你可能感兴趣的:(windows)