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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙铭泽 中级黑马   /  2012-8-21 20:50  /  1303 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

"cbxzbvavdvgd"获取字符串中,每一个字母出现的次数。
要求结果是:"a(1)b(2)c(1)d(2)g(1)v(3)x(1)z(1)"

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

1 个回复

倒序浏览
l楼主看看我的解法,绝对符合你的要求
  1. public static void main(String[] args) {
  2.                 String str="jfiowqfnvmcafjkdslamnzvcvcxz";//随便定义字符串
  3.                 char[]str_ch=str.toCharArray();//把字符串转换为字符数组
  4.                 char ch[]={'a','b','c','d','e','f','g','h','i','j','k','l',
  5.                                 'm','n','o','p','q','r','s','t','u','v','w','x','y','z'};//定义26个字母字符数组
  6.                 int num[]=new int[26];//定义一个长度为26的整形数组用来为每个字母计数
  7.                 for (int i = 0; i < str_ch.length; i++) {
  8.                         for (int j = 0; j < ch.length; j++) {
  9.                                 if(ch[j]==str_ch[i]){//两层for循环进行比对
  10.                                         num[j]++;//计数
  11.                                 }
  12.                         }
  13.                 }
  14.                 for (int i = 0; i < num.length; i++) {
  15.                         if(num[i]!=0){//如果等于0就是在字符串中没有出现过
  16.                                 System.out.print(ch[i]+"["+num[i]+"], ");//打印
  17.                         }
  18.                 }
  19.          }
复制代码
运行结果
a[2], c[3], d[1], f[3], i[1], j[2], k[1], l[1], m[2], n[2], o[1], q[1], s[1], v[3], w[1], x[1], z[2],

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马