给定一个字符串,求出字符串中每一个单词在字符串中出现的次数
package com.alexanderli95.map;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/**
* 将字符串分割成单词,存储到map中,并分拣
* map:key-String
* Value-Letter
* 分拣思路:
* 1.为所有Key创建容器,之后容器中存放对应Value
* 2.第一次创建容器并存放Value,第二次之后直接用容器存放值
*/
public class Demo01 {
public static void main(String[] args) {
String str="1 2 3 4 5 6 7 8 9 0 1 2 3";
//分割字符串
String[] words=str.split(" ");
//存放到Map中
Map<String,Letter> letters=new HashMap<String,Letter>();
for(String s:words){
//思路2
if(!letters.containsKey(s)){
Letter col=new Letter();
col.setCount(1);
letters.put(s,col);
}else{
Letter col=letters.get(s);
col.setCount(col.getCount()+1);
}
//输出Map的值
Set<String> keys=letters.keySet();
for(String key:keys ){
Letter col=letters.get(key);
System.out.println("单词:"+key+",次数"+col.getCount());
}
}
}
public static void test01(){
String str="1 2 3 4 5 6 7 8 9 0 1 2 3";
//分割字符串
String[] words=str.split(" ");
//存放到Map中
Map<String,Letter> letters=new HashMap<String,Letter>();
for(String s:words){
//思路1
if(!letters.containsKey(s)){
letters.put(s,new Letter()); //创建了一个空的容器
}
Letter col=letters.get(s);
col.setCount(col.getCount()+1);
}
//输出Map的值
Set<String> keys=letters.keySet();
for(String key:keys ){
Letter col=letters.get(key);
System.out.println("单词:"+key+",次数"+col.getCount());
}
}
}