对文本单词进行技数,并倒序列出计数统计
请编写一个程序,对一个文本中出现的单词进行计数,并且按单词顺序倒序列出计数列表。示例:
输入:aa bb cc aa cc dd ee aa
输出:
ee 1
dd 1
cc 2
bb 1
aa 3
编程代码如下:
import java.util.Arrays;
import java.util.Comparator;
import java.util.Map;
import java.util.TreeMap;
public class Test{
public static void main(String[] args) {
String string = "aa bb cc aa cc dd ee aa";
String[] arr = string.split("\\s+");
// System.out.println(Arrays.toString(arr));
Map<String,Integer> map = new TreeMap<String, Integer>(
new Comparator<String>() {
public int compare(String o1, String o2) {
return o2.compareTo(o1);
}
} );
for (String str : arr) {
if(map.containsKey(str)) {
int count = map.get(str);
map.put(str, count+1);
} else {
map.put(str, 1);
}
}
//遍历map
for (Map.Entry<String,Integer> entry : map.entrySet()) {
System.out.println(entry.getKey() + " " + entry.getValue());
}
}
}
打印输出:
ee 1 dd 1 cc 2 bb 1 aa 3

浙公网安备 33010602011771号