标签:map ch 打印输出 Map 重复 list 次数 排序 public
最近在面试,好多的面试题,笔试题,有的笔试题搜百度搜不到点子上的
这个刚开始看着很简单,后面说要排序,想起了用Collections里面自定义的比较器
代码:
public class StringDemo { public static void main(String[] args) { String str = "asdzxasdqweasdzs"; char[] chars = str.toCharArray(); Map<Character, Integer> map = new HashMap<>(); for (char ch : chars) { if (map.containsKey(ch)) { map.put(ch, map.get(ch) + 1); } else { map.put(ch, 1); } } System.out.println("map:" + map); //排序 List<Map.Entry<Character, Integer>> list = new ArrayList<>(); for (Map.Entry<Character, Integer> entry : map.entrySet()) { list.add(entry); } Collections.sort(list, new Comparator<Map.Entry<Character, Integer>>() { @Override public int compare(Map.Entry<Character, Integer> o1, Map.Entry<Character, Integer> o2) { return o1.getValue() - o2.getValue(); } }); System.out.println("排序后:" + list); } } 结果: map:{a=3, q=1, s=4, d=3, e=1, w=1, x=1, z=2} 排序后:[q=1, e=1, w=1, x=1, z=2, a=3, d=3, s=4]
标签:map,ch,打印输出,Map,重复,list,次数,排序,public 来源: https://www.cnblogs.com/cmmplb/p/11963518.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。