相关疑难解决方法(0)

按值对地图<键,值>进行排序

我是Java的新手,经常发现我需要对Map<Key, Value>值进行排序.

由于值不是唯一的,我发现自己将其转换keySet为a array,并通过数组排序对该数组进行排序,并使用自定义比较器对与键关联的值进行排序.

有没有更简单的方法?

java sorting collections dictionary

1569
推荐指数
27
解决办法
134万
查看次数

如何整理TreeMap <String,Integer>?

我有一张地图:TreeMap<String, Integer> m = new TreeMap<>();我有一个完整的字母和值,显示我的文字中每个字母的次数.

我想按递减计数顺序对该地图进行排序; 也就是说,最常见的字母在第一行,最后一行表示最不频繁的字母.如果两个字母具有相同的频率,那么字母表中首先出现的字母必须首先出现.怎么做?

我试过Comparator:

public int compare(String a, String b) {
        if (base.get(a) >= base.get(b) && a.compareToIgnoreCase(b) < 0) {
            return -1;
        } else {
            return 1;
        }
    }
Run Code Online (Sandbox Code Playgroud)

但仍然,不是它,输出是:

D 3
E 3
A 2
S 5
Run Code Online (Sandbox Code Playgroud)

伙计们......之前发现这个,这根本没有帮助.好的输出应该是:

S 5
D 3
E 3
A 2
Run Code Online (Sandbox Code Playgroud)

java treemap

6
推荐指数
1
解决办法
2838
查看次数

标签 统计

java ×2

collections ×1

dictionary ×1

sorting ×1

treemap ×1