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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1.         import java.util.*;
  2.         class Demo {
  3.                 public static void main(String [] args) {
  4.                         String s="hcgn  gvsgj sbcgscbgsibs cgjvjbj123kbxkcjsbkjv";
  5.                         //可根据需要将字符串判断一次,确保字符串全是字母,没有数字或其他字符。
  6.                         s=formatString(s);
  7.                         printTime(s);
  8.                 }
  9.                 public static String formatString(String s) {
  10.                         s=s.toLowerCase();
  11.                         s=s.replaceAll("[^a-z]","");                //去除所有非字母字符
  12.                         return s;
  13.                 }
  14.                 public static void printTime(String s) {
  15.                         char [] ch=s.toCharArray();
  16.                         TreeMap<Character,Integer> tm=new TreeMap<Character,Integer>();
  17.                         for (int x=0;x<ch.length;x++) {
  18.                                 char c=ch[x];
  19.                                 int i=0;
  20.                                 if (tm.containsKey(c))
  21.                                         i=tm.get(c);
  22.                                 tm.put(c,++i);
  23.                         }
  24.                         Set<Map.Entry<Character,Integer>> entrySet=tm.entrySet();
  25.                         for (Iterator<Map.Entry<Character,Integer>> it=entrySet.iterator();it.hasNext(); ) {
  26.                                 Map.Entry<Character,Integer> me=it.next();
  27.                                 char c=me.getKey();
  28.                                 int i=me.getValue();
  29.                                 System.out.print(c+"("+i+") ");                        //直接按格式打印。
  30.                         }
  31.                 }
  32.         }
复制代码
这是在第二遍自学毕老师视频时,自己按自己想法写出来的。

有问题或者可以优化的地方 欢迎指正

1 个回复

倒序浏览
不错,学习了.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马