首页 > 代码库 > 【java】用HashMap计数,用TreeSet排序
【java】用HashMap计数,用TreeSet排序
1 package com.tn.hashMap; 2 3 import java.util.HashMap; 4 import java.util.TreeSet; 5 6 public class HashMapDemo { 7 public static void main(String[] args){ 8 9 String str="eeeeaccbbddddffffff"; 10 HashMap<String,Integer> hashMap=new HashMap<String,Integer>(); 11 for(int i=0;i<str.length();i++){ 12 if(!hashMap.containsKey(str.substring(i, i+1))){ 13 hashMap.put(str.substring(i, i+1), 1); 14 }else{ 15 hashMap.put(str.substring(i,i+1), hashMap.get(str.substring(i, i+1))+1); 16 } 17 } 18 19 TreeSet<T> treeSet=new TreeSet<T>(); 20 for(String key:hashMap.keySet()){ 21 T t=new T(key,hashMap.get(key)); 22 treeSet.add(t); 23 } 24 System.out.println(treeSet); 25 } 26 } 27 28 class T implements Comparable<T>{ 29 private String value; 30 private Integer count; 31 32 public T(String value, Integer count) { 33 super(); 34 this.value =http://www.mamicode.com/ value; 35 this.count = count; 36 } 37 38 public String getValue() { 39 return value; 40 } 41 42 public void setValue(String value) { 43 this.value =http://www.mamicode.com/ value; 44 } 45 46 public Integer getCount() { 47 return count; 48 } 49 50 public void setCount(Integer count) { 51 this.count = count; 52 } 53 54 @Override 55 public String toString() { 56 return value+"出现"+count+"次。"; 57 } 58 59 @Override 60 public int compareTo(T o) { 61 if(this.count!=o.count) 62 return this.count-o.count;//以出现次数排序 63 else 64 return this.value.compareTo(o.value);//出现次数相同以字母顺序排序 65 } 66 67 }
【java】用HashMap计数,用TreeSet排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。