Map.Entry求解!

battle888 battle888 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
/*统计字符串”abadcdffbaeba”中每个字符出现了多少次,按次数排序并输出。
例如:c : 1,e : 1,d : 2,f : 2,b : 3,a : 4*/
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class Test implements Comparator<Entry<String,Long>>{
public static void main(String[] args) {
String str = "abadcdffbaeba";
Map<String,Long> result = new HashMap<String,Long>();
String[] s = str.split("");
for(int i=0;i<s.length;i++){
if("".equals(s[i])){
continue;
}
if(result.get(s[i])!=null){
result.put(s[i], result.get(s[i])+1);
}
else{
result.put(s[i], 1l);
}
}

List list = new ArrayList(result.entrySet());
Collections.sort(list, new Test());
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}

}
//问o1和o2是什么意思,是怎么传进来的?
public int compare(Entry<String, Long> o1, Entry<String, Long> o2) {
long i = o1.getValue() - o2.getValue();
if(i==0l) {
//o2.getValue()返回的是什么?
return o2.getValue().compareTo(o1.getValue())==0 ? 1 :0;
}
return i > 0l ? 1 : 0;
}
}
...全文

相关推荐

Java Map.Entry的使用方法解析

主要介绍了Java Map.Entry的使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

weixin_38667849

MAP与ENTRY遍历解析[代码]

本文详细介绍了Java中MAP的基本概念及其键值对的存储方式,通过具体代码示例展示了如何使用put和get方法操作MAP中的键值对。同时,文章还讲解了ENTRY接口在遍历MAP时的应用,以及如何将MAP中的键名和键值分别存储到指定字段中。此外,还介绍了如何通过for循环遍历包含多个MAP的LIST,并从中提取所需数据。这些内容为开发者提供了实用的MAP操作技巧,有助于更高效地处理键值对数据。

kappa

java遍历Map的几种方法分析

主要介绍了java遍历Map的几种方法,结合实例形式分析了使用循环与迭代等方法操作Map遍历的相关技巧,需要的朋友可以参考下

weixin_38632046

Map获取键值,Map的几种遍历方法总结(推荐)

下面小编就为大家带来一篇Map获取键值,Map的几种遍历方法总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

weixin_38737366

Java遍历Map键、值和获取Map大小的方法示例

本篇文章主要介绍了Java遍历Map键、值和获取Map大小的方法示例,详细的介绍了Java遍历Map的两种实现方法和大小,具有一定的参考价值,有兴趣的可以了解一下。

weixin_38692836
评论 4
收藏 已收藏
分享
返回顶部
battle888
Java SE 62,621 成员 307,251 内容