- 统计输入字符串中每个字符的出现次数
- 将结果存在hashmap中并输出
package baoxinhai_test_collection_hashset;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
/*
*@author bxh
*this program is to receive a string from the console,and then count the mount of every char that exists in the string
*
*/
public class Stringcount {
public static void main(String[] args) {
String_count();
}
// 函数统计字符串中每个字符出现的次数并返回输出结果 使用hashmap
public static void String_count() {
HashMap<String, Integer> map = new HashMap<>();
Scanner is =new Scanner(System.in);
System.out.println("请输入一个字符串:");
String input=is.nextLine(); //存储输入的字符串
for(int i=0;i<input.length();i++)
{
char c = input.charAt(i);
String key=String.valueOf(c);
if(map.containsKey(key))
{
Integer value=map.get(key);
value++;
map.put(key, value);
}
else {
map.put(key, 1);
}
}
System.out.println("统计结果如下:");
//输出字符串
Set<Entry<String, Integer>> set = map.entrySet();
Iterator<Entry<String, Integer>> iterator = set.iterator();
while (iterator.hasNext()) {
Entry<java.lang.String, java.lang.Integer> entry = (Entry<java.lang.String, java.lang.Integer>) iterator
.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+"-->"+value);
}
}
}