最近也遇到了查询集合中出现重复数据,并且要知道出现重复数据的次数,所以就记录一下,代码是一个方法,直接传入集合就可以进行测试:
/**
* 查询list集合中出现重复的数据及次数
*/
private void RepeatDate(List<Integer> list) {
Map<Integer, Integer> map = new HashMap<>();
int count;// 默认出现的次数为1
for (int i = 0; i < list.size(); i++) {
count = 1;
for (int j = i + 1; j < list.size(); j++) {
if (list.get(i) == list.get(j)) {
count++;// 次数+1
list.remove(j);
j--;
}
}
map.put(list.get(i), count);
Log.i(TAG, "RepeatDate: " + i + "--出现了---" + count + "次");
Log.i(TAG, "RepeatDate: " + map);
}
}