取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq" ,输出格式为:a(2)b(1)k(2)..(注意,字母出现的次数,要过滤掉数字)

题目:

取出一个字符串中字母出现的次数。如:字符串:"abcd

package yang.base;

import java.util.Set;
import java.util.TreeMap;

/**
 *取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq" ,
 *输出格式为:a(2)b(1)k(2)..(注意,字母出现的次数,要过滤掉数字)
 *分析:
 *	定义一个字符串
 *	定义一个treemap集合
 *	把字符串转换成字符数组
 *	对数组进行遍历
 *		如果是字符
 *			不存在:则把字符做为键,值变为1
 *			存在:值加1
 *
 *	遍历输出
 *		
 */
public class Test6 {
	public static void main(String[] args) {
//		定义一个字符串
		String str = "abcdekkacc27qoqaaaa";
//		定义一个treemap集合
		TreeMap<Character, Integer> tm = new TreeMap<>();
//		把字符串转换成字符数组
		char[] chs = str.toCharArray();
//		对数组进行遍历
//				如果是字符
//					不存在:则把字符做为键,值变为1
//		 		存在:值加1
		for(Character ch : chs){
			if((ch>66&&ch<91)||(ch>96&&ch<123)){
				Integer i = tm.get(ch);
				if(i==null){
					tm.put(ch, 1);
				}else {
					i++;
					tm.put(ch, i);
				}
				
			}
		}
//		遍历输出
		Set<Character> keyset=tm.keySet();
//		System.out.println(keyset);
		for(Character chss:keyset){
			System.out.print(chss+"("+tm.get(chss)+")");
		}
		
	}
}

ekka27qoq" ,输出格式为:a(2)b(1)k(2)..(注意,字母出现的次数,要过滤掉数字)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值