可以使用HashMap来统计集合中相同数据的个数。具体的步骤如下:
使用HashMap来创建一个空的映射表,其中key表示集合中的元素,value表示该元素在集合中出现的次数。
遍历集合中的每个元素,判断该元素是否已经在映射表中。如果已经存在,则将对应的value值加1;如果不存在,则将该元素作为key,value值设为1,将其存入映射表中。
完成遍历后,映射表中的所有key和value就分别表示了集合中的元素和对应的出现次数。
下面是一个示例代码:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class CountDuplicates {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(1);
list.add(2);
Map<Integer, Integer> countMap = new HashMap<>();
for (Integer num : list) {
if (countMap.containsKey(num)) {
countMap.put(num, countMap.get(num) + 1);
} else {
countMap.put(num, 1);
}
}
for (Map.Entry<Integer, Integer> entry : countMap.entrySet()) {
System.out.println(entry.getKey() + "出现了" + entry.getValue() + "次");
}
}
}
运行结果为:
1出现了2次
2出现了2次
3出现了1次