`

统计一个字符串中每个字符串出现的次数

    博客分类:
  • java
 
阅读更多

经常遇到这个问题:总结一下 思路和代码
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
//统计一个字符串中每个字符出现的次数
//思路 :
/*1.遍历字符串,取出每一个字符需要用到chatAt() 
  2.由于最终展示的数据呈现的方式是 字符---个数 这种形式,能联想到用map集合是最合适的;那么将取出的字符存到临时容器中
  3.判断:如果这个字符在容器中不存在,那么肯定是第一次出现,直接将这个字符存到容器中,此时value的值为1;如果这个字符在容器中存在,则取出字符的value,对值进行加1的操作,然后更新map;
  4.遍历map,查看字符与之对应的次数。 */

public class TestCountString {
	public static void main(String[] args) {
		String str = "aaeufreuhfjdshfakjdshfkjdsahfkjdsahfeufhyenvmvmcxbvdafaslkjdhfjdsfheibcda";
		Map map = new HashMap ();
		for(int i=0;i<str.length();i++){
			char ch = str.charAt(i);
			boolean isFirstExist = map.containsKey(ch);
			
			if(isFirstExist){ //多次
				int value = (Integer)map.get(ch);
				value++;
				map.put(ch, value);
			}else{ //第一次
				map.put(ch, 1);
			}
		}
		
		Set keySet = map.keySet();
		for (Object key : keySet) {
			Object value = map.get(key);
			System.out.println(key+"========"+value);
		}
	}
}

/*
运行结果:
f========10
d========8
e========5
b========2
c========2
a========8
n========1
l========1
m========2
j========6
k========4
h========8
i========1
v========3
u========3
s========6
r========1
y========1
x========1
*/ 
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics