java – 如何查找重复的行并显示它们前面的重复次数
发布时间:2020-12-15 04:49:59 所属栏目:Java 来源:网络整理
导读:是的,这是一个微不足道的问题,但我没有找到重复的问题.目前,从这个集合(ArrayList): JavaC#JavaPython 我必须得到这个:(也就是说,每个单词都会遇到重复的数量) Java 2C# 1Java 2Python 1 目前我正在使用Map,但它会删除重复项,这就是我得到的. Java 2C# 1Pyt
是的,这是一个微不足道的问题,但我没有找到重复的问题.目前,从这个集合(ArrayList):
Java C# Java Python 我必须得到这个:(也就是说,每个单词都会遇到重复的数量) Java 2 C# 1 Java 2 Python 1 目前我正在使用Map,但它会删除重复项,这就是我得到的. Java 2 C# 1 Python 1 这是我的代码: Map<String,Integer> map = new HashMap<>(); for (String temp : array) { Integer count = map.get(temp); if (count != null){ map.put(temp,count + 1); } else { map.put(temp,1); } } 我有一个想法,将数据写入另一个列表,通过此列表比较“父”列表的每个元素与新列表的所有元素.像这样的东西: List<String> resultList = new ArrayList<>(); List<String> mainList = new ArrayList<>(); for (int i = 0; i < arrayList.size(); i++) { mainList.add(i,arrayList.get(i)); } for (int i = 0; i < mainList.size(); i++) { int x = 1; for (String anArray : arrayList) { if (mainList.get(i).equals(anArray)) { resultList.add(i,mainList.get(i) + " "+ x++); } } } resultList.forEach(System.out::println); 哪个可以正常工作,但在遇到重复时也会创建一个额外的行. Java 2 C# 1 Java 2 Python 1 Java 1 Java 1 在使用List的实现中,我遇到的问题是它将当前元素增加1,但同时又创建了另一个元素. 伙计们,我会很高兴能引导我解决问题的任何想法或线索! UPD:这个问题的所有答案都是神圣的.感谢你们!在不冒犯别人的情况下,我觉得选择正确的答案会让人觉得尴尬. 解决方法
您可以在迭代列表时使用
Collections.frequency 来打印列表中每个单词的出现次数:
public static void main(String[] args) { List<String> list = Arrays.asList("Java","C#","Java","Python"); list.forEach( s -> System.out.println(s + " " + Collections.frequency(list,s))); } 输出: Java 2 C# 1 Java 2 Python 1 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- mybatis foreach批量插入数据:Oracle与MySQL区别介绍
- MyEclipse安装JS代码提示的教程(Spket插件)
- java – 如何使用Eclipse JFace中的IDecorationContext api
- java – 防止Tomcat在HTTP错误状态4xx或5xx上干扰Jersey /
- java算术计算结果的数据类型
- java – 将映射或对象从jsp传递到servlet
- java – 运行脚本以使用HSQLDB创建表
- java – 以一种不那么冗余的方式创建多个Jlabel和JTextFiel
- java – Hibernate – 将列存储为加密,仅在运行时解密
- java – 更改使用JAXWS生成的默认XML命名空间前缀