统计字符串中每个单词出现的次数,使用HashMap来实现。
例如:“Hello word Hello”,统计结果存储成以下形式:
Hello:2次word:1次
提示:使用String.split()方法进行分词,空格,标点符号等。
HashMap不会出现重复的key,如果重复,则后者的value会覆盖前者的
package yu;
import java.util.HashMap;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
String str="Hello word Hello ";
HashMap<String, Integer> hm=new HashMap<>(); //定义一个双列集合
String [] strs=str.split(" "); //分割成若干字符串
for (int i = 0; i < strs.length; i++) { //判断每个字符串,是存在于集合里
if (!hm.containsKey(strs[i])) {
hm.put(strs[i], 1); //如果不存在,则存进去 比如 Hello:1
}else {
Integer counts=hm.get(strs[i]); //如果存在 ,先找到 此key对应的 value值
hm.put(strs[i], counts+1); //覆盖前者的的key值,并且比前者多加一次
}
}
//遍历
Iterator<String> it=hm.keySet().iterator(); //获取HashMap所有的key集合并遍历
while(it.hasNext()) {
String keyName=it.next();
System.out.println(keyName+":"+hm.get(keyName)+"次");
}
}
}