当前位置: 首页 > news >正文

Android 实现获取集合中出现重复数据的值和数量

方法一:使用HashMap和HashSet

  1. 创建一个HashMap,用于存储集合中的元素及其出现次数。
Map<String, Integer> map = new HashMap<>();
  1. 遍历集合,将每个元素作为键,将其出现次数作为值添加到HashMap中。
for (String item : list) {map.put(item, map.getOrDefault(item, 0) + 1);
}
  1. 遍历HashMap,找到出现次数大于1的元素及其出现次数。
for (Map.Entry<String, Integer> entry : map.entrySet()) {if (entry.getValue() > 1) {System.out.println("重复元素:" + entry.getKey() + ",出现次数:" + entry.getValue());}
}

方法二:使用Java 8的Stream API

  1. 首先,将列表转换为Stream。
Stream<String> stream = list.stream();
  1. 使用collect()方法将Stream转换为Map,其中键为元素,值为出现次数。
Map<String, Integer> map = stream.collect(Collectors.toMap(list::contains, String::equals, (a, b) -> a + 1));
  1. 遍历HashMap,找到出现次数大于1的元素及其出现次数。
for (Map.Entry<String, Integer> entry : map.entrySet()) {if (entry.getValue() > 1) {System.out.println("重复元素:" + entry.getKey() + ",出现次数:" + entry.getValue());}
}

以上两种方法都可以用于获取集合中重复数据的值和数量。方法一是基于HashMap和HashSet的实现,而方法二是基于Java 8的Stream API。可以根据实际需求和性能要求选择合适的方法。

http://www.lryc.cn/news/281136.html

相关文章:

  • 【QT学习十一】QThread
  • Mybatis 39_使用MBG生成代码
  • Hudi metadata table(元数据表)
  • 提高iOS App开发效率的方法
  • MPU机制与实现详解
  • pom文件冲突引起的Excel无法下载
  • 【HarmonyOS4.0】第十篇-ArkUI布局容器组件(二)
  • PLECS如何下载第三方库并导入MOSFET 的xml文件,xml库路径添加方法及相关问题
  • 使用emu8086实现——子程序的设计
  • 快速排序、归并排序、希尔排序(2023-12-25)
  • Qt SDL2播放Wav音频
  • [ACM学习] 动态规划基础之一二三维dp
  • Qt点击按钮在其附近弹出一个窗口
  • Springboot注解@Configuration和@Bean注解作用,生命周期
  • 30天精通Nodejs--第十五天:Websocket
  • C++深入学习之STL:2、适配器、迭代器与算法部分
  • Tiktok/抖音旋转验证码识别
  • 【Java 设计模式】设计原则
  • Druid连接池工具公式化SQL附踩坑记录
  • Linux内核--网络协议栈(二)UDP数据包发送
  • 基于深度学习的时间序列算法总结
  • nginx中多个server块共用upstream会相互影响吗
  • 基于信号完整性的一些PCB设计建议
  • 《BackTrader量化交易图解》第8章:plot 绘制金融图
  • 什么是欧拉筛??
  • 2023年全国职业院校技能大赛软件测试赛题—单元测试卷⑩
  • 使用WAF防御网络上的隐蔽威胁之SSRF攻击
  • Redis基础系列-哨兵模式
  • 【angular教程240112】09(完) Angular中的数据请求 与 路由
  • go中拷贝文件操作