快速业务通道

Java对字符串中字符出现的次数进行排序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

Java对字符串中字符出现的次数进行排序

时间:2011-02-01 csdn博客 赵学庆

import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 对字符集中字符出现的次数继续排序。 * * @author 赵学庆 */ public class T {  public static void main(String args[]) {   String str = "12345678hfdjkslahfkj932189oiefsjkar94werfdsf";   Map<Character, KeyValue> map = new HashMap<Character, KeyValue>();   char c;   KeyValue kv = null;   for (int i = 0; i < str.length(); i++) {    c = str.charAt(i);    kv = map.get(c);    if (kv == null) {     kv = new KeyValue();     kv.ch = c;     kv.count = 1;     map.put(c, kv);    } else {     kv.count++;    }   }   List<KeyValue> list = new ArrayList<KeyValue>(map.values());   Collections.sort(list);   for (KeyValue o : list) {    System.out.println(o.ch + "=" + o.count);   }  } } class KeyValue implements Comparable {  public int compareTo(Object obj) {   if (obj instanceof KeyValue) {    KeyValue kv = (KeyValue) obj;    return kv.count - this.count;   }   return -1;  }  char ch;  int count; }

运行结果

f=5 j=3 k=3 s=3 9=3 d=2 e=2 a=2 h=2 3=2 2=2 1=2 r=2 4=2 8=2 o=1 l=1 i=1 w=1 7=1 6=1 5=1

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号