输入一个字符串,统计每个字符出现的次数,保存在map集合中,并按照出现的次数排序 {k=9,o=5,a=3,,,}

在这里插入图片描述
package HH;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeSet;

class Test{
public static void main(String[] args) {
HashMap<String,Integer> m = new HashMap<String,Integer>();
Scanner input = new Scanner(System.in);
System.out.println(“请输入一个字符串:”);
String in = input.next();
for(int i=0;i<in.length();i++) {
String sc = in.charAt(i)+"";
// if(m.containsKey(sc)) {
// m.put(sc, m.get(sc)+1);
// }else {
// m.put(sc, 1);
// }
m.put(sc, m.containsKey(sc)?(m.get(sc)+1):1);
}
ArrayList pp = new ArrayList();
System.out.println(m);
Set<Entry<String, Integer>> ss = m.entrySet();
for (Entry<String, Integer> entry : ss) {
pp.add(new pai(entry.getKey(),entry.getValue()));
}
Collections.sort(pp);

	System.out.println(pp);

–方法二–
//ArrayList<Entry<String, Integer>> pp = new ArrayList<Entry<String, Integer>>();
// System.out.println(m);
// Set<Entry<String, Integer>> ss = m.entrySet();
// for (Entry<String, Integer> entry : ss) {
// pp.add(entry);
// }
// Collections.sort(pp,new Comparator<Entry<String, Integer>>() {@Override
// public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
// // TODO Auto-generated method stub
// return o1.getValue()-o2.getValue();
// }
// });
}
}

class pai implements Comparable{
String s;
int f;
public pai(String s, int f) {
super();
this.s = s;
this.f = f;
}
@Override
public String toString() {
return s + “=” + f;
}
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
}
public int getF() {
return f;
}
public void setF(int f) {
this.f = f;
}
public pai() {
super();
// TODO Auto-generated constructor stub
}
@Override
public int compareTo(pai o) {
// TODO Auto-generated method stub
return o.f-this.f;
}
}

猜你喜欢

转载自blog.csdn.net/qq_40661543/article/details/114269841
今日推荐