A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kongyan4696 中级黑马   /  2014-6-1 20:48  /  1023 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.util.*;
  2. /*
  3. 简化版的TreeMap统计字符次数!
  4. */
  5. public class LetterCountMapDemo{
  6.         public static void main(String[] args){
  7.                 //需检测的字符串
  8.                 String letter = "heimabiguo!,kkkkyyyTdDDttT";
  9.                 //TreeMap
  10.                 TreeMap<Character,Integer> tm = new TreeMap<Character,Integer>();
  11.                 //遍历字符
  12.                 for(char c:letter.toCharArray()){
  13.                         //判断是否为字符
  14.                         if(!Character.isLetter(c)){
  15.                                 continue;
  16.                         }
  17.                         //这个地方是简化的重点
  18.                         //put返回的是某个键之前存的值,如果键不存在,则返回null
  19.                         //直接存入键:字符 值:1         得到返回的值
  20.                         Integer it = tm.put(c,1);
  21.                         //如果返回为不为null 说明键存在
  22.                         if(it!=null){
  23.                                 //重新插入新的次数,it是之前键的值
  24.                                 tm.put(c,it+1);
  25.                         }
  26.                 }
  27.                 System.out.println(tm);
  28.         }
  29. }
复制代码


E:\Coder\cc>java LetterCountMapDemo
{D=2, T=2, a=1, b=1, d=1, e=1, g=1, h=1, i=2, k=4, m=1, o=1, t=2, u=1, y=3}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马