Java 如何让HashMap集合按照key进行排序呢?
下文笔者讲述java中HashMap集合按照key排序的方法分享,如下所示:
实现思路: 方式1: 获取key集合,然后在Collections.sort(key集合) 方式2: 自定义一个外部比较器,在比较器中设置其比较规则例:
Map<String, Integer> map = new HashMap<String, Integer>(); map.put("t",8888); map.put("a",9999); Set keySet = map.keySet(); Collections.sort(keySet); for(Iterator ite = keySet.iterator(); ite.hasNext();) { String k = ite.next(); System.out.println("key-value: "+k+","+map.getValue(v); } //如果需按照key降序排列时,我们需重写sort方法 Collections.sort(keySet, new Comparator() { public int compare(Object o1, Object o2) { if (Integer.parseInt(o1.toString()) > Integer.parseInt(o2.toString()) return 1; if (Integer.parseInt(o1.toString()) == Integer.parseInt(o2.toString()) return 0; else return - 1; } });
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。