Java Map集合案例1--统计字符串中每个字符串以及个数
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
import org.junit.Test;
/* Java案例——统计字符串中每个字符串出现的次数 */
public class Lianxi03{
@Test
public void test01() {
//输入一个字符串
Scanner sc = new Scanner(System.in);
String str = sc.next();
//创建一个集合对象,键值对的类型分别为Character,Integer,分别用于保存字符和字符的次数
Map<Character,Integer> map = new HashMap<Character,Integer>();
//字符串改为字符数组
char[] array = str.toCharArray();
//遍历数组,得到每一个字符
for(Character c:array) {
if(map.containsKey(c))//先判断集合中是否存在某一个字符,字符作为key,如果存在,则获取其
//对应的value,也就是字符的次数,然后字符的次数加1
{
Integer num = map.get(c);//得到value,也就是字符对应的次数,
num++;//此时该字符的数目需要加1
//得到字符的新的数目过后,需要添加到集合对应字符的value中去,此时需要重新键-值对,
map.put(c, num);
}else {//此一步表示集合没有该该字符,也就是集合中不存在以c为键值的Key,需要将该字符作为键保存在集合中去,并
//赋值value为1