I want to enter some text, to separate the letters and then make a hashmap with keys-> unique letters of text and values -> number of repeated letters.How to sort values of Hashmap by descending order.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
public class Menu {
public static void main(String args[]){
String text = null;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Please enter some text: ");
try {
text = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
HashMap<Character, Integer> map = new HashMap();
String UpperCase = text.toUpperCase();
for (int i = 0;i < UpperCase.length(); i++){
Character currentChar = UpperCase.charAt(i);
if(map.get(currentChar) == null){
map.put(currentChar, 1);
} else {
map.put(currentChar, map.get(currentChar) + 1);
}
}
for (Character name: map.keySet()){
String key = name.toString();
String value = map.get(name).toString();
System.out.println(key + " " + value);
}
}
}