Java Map案例1--统计字符串中每个字符串以及个数

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
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值