问题如下:
package cn.tedu.day01;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args) {
Scanner sc1 = new Scanner(System.in);
System.out.println("请输入一段英语");
String st1 = sc1.nextLine();
Map<Character, Integer> m = new HashMap<Character, Integer>();
for(int i = 97;i<123;i++) {
m.put((char) i, 0);
}
for(int i =0;i<st1.length();i++) {
char ch = st1.charAt(i);
int result = m.get(ch);
result = result +1;
m.put(ch, result);
}
sort(m);
}
public static void sort(Map<Character, Integer>m) {
ArrayList<Map.Entry<Character, Integer>> a1 = new ArrayList<Map.Entry<Character,Integer>>();
Set<Map.Entry<Character, Integer>>ss = m.entrySet();
for(Map.Entry<Character, Integer>en:ss) {
a1.add(en);
}
for(int i =0;i<a1.size()-1;i++) {
for(int j =0;j<a1.size()-1-i;j++) {
if(a1.get(j).getValue()>a1.get(j+1).getValue()) {
Map.Entry<Character, Integer>temp = a1.get(j);
a1.set(j, a1.get(j+1));
a1.set(j+1, temp);
}
}
}
for(int i =0;i<a1.size();i++) {
if(a1.get(i).getValue()!=0) {
for(int j =0;j<a1.get(i).getValue();j++) {
System.out.print("*");
}
System.out.println("\t");
}
}
}
}
package cn.tedu.day01;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args) {
Scanner sc1 = new Scanner(System.in);
System.out.println("请输入一段英语");
String st1 = sc1.nextLine();
Map<Character, Integer> m = new HashMap<Character, Integer>();
for(int i = 97;i<123;i++) {
m.put((char) i, 0);
}
for(int i =0;i<st1.length();i++) {
char ch = st1.charAt(i);
int result = m.get(ch);
result = result +1;
m.put(ch, result);
}
sort(m);
}
public static void sort(Map<Character, Integer>m) {
ArrayList<Map.Entry<Character, Integer>> a1 = new ArrayList<Map.Entry<Character,Integer>>();
Set<Map.Entry<Character, Integer>>ss = m.entrySet();
for(Map.Entry<Character, Integer>en:ss) {
a1.add(en);
}
for(int i =0;i<a1.size()-1;i++) {
for(int j =0;j<a1.size()-1-i;j++) {
if(a1.get(j).getValue()>a1.get(j+1).getValue()) {
Map.Entry<Character, Integer>temp = a1.get(j);
a1.set(j, a1.get(j+1));
a1.set(j+1, temp);
}
}
}
for(int i =0;i<a1.size();i++) {
if(a1.get(i).getValue()!=0) {
for(int j =0;j<a1.get(i).getValue();j++) {
System.out.print("*");
}
System.out.println("\t");
}
}
}
}