java Map练习-获取字符串中字母出现次数(TreeMap实现)

来源:互联网 发布:venue 8 windows平板 编辑:程序博客网 时间:2024/04/29 17:58
/*练习:"kbashbdjsgfwhofihbfkwejhfiubjzfhaads"获取该字符串中的字母出现次数。希望打印结果:a(3)b(4)d(2)...通过结果发现,每一个字母都有对应的次数。、说明字符和次数之间都有映射关系。注意:当发现有映射关系是,可以选择map集合。因为map集合中存放的就是映射关系。为什么使用map集合呢?当数据之间存在着映射关系时,就想到了map集合。思路:1,利用String类的charAt()方法遍历字符串中的每一个字符。2,定义一个map,因为输出结果是有序的,所以使用TreeMap集合。3,遍历字符串中的每个字符,判断map中是否存在此键,   若存在,则键值+1;   若不存在,则将该字符作为键存入map,并赋予键值为1.*/import java.util.*;class MapTest3 {public static void main(String[] args) {String str="kbashbdjsgfwhofihbfkwejhfiubjzfhaads";TreeMap tm=new TreeMap();for(int i=0;i<str.length();i++){char ch=str.charAt(i);if(!(tm.containsKey(ch)))tm.put(ch,1);else{int t=(int)(tm.get(ch))+1;tm.put(ch,t);}}Set s=tm.keySet();Iterator it=s.iterator();while(it.hasNext()){char chr=(char)it.next();int num=(int)tm.get(chr);sop(chr+"..."+num);}}public static void sop(Object obj){System.out.println(obj);}}

0 0
原创粉丝点击