我需要从数据库中获取重复超过 3 次的元素。这是我的代码如何执行此操作:
public static ArrayList<Integer> getPrice(List<Integer> list) {
ArrayList<Integer> result = new ArrayList<Integer>();
int val;
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
for (int i = 0; i < list.size(); i++) {
val = list.get(i);
if (!map.containsKey(val)) {
map.put(val, 1);
} else {
map.put(val, map.get(val) + 1);
}
}
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
if (entry.getValue() > 3) {
result.add(entry.getKey());
}
}
return result;
}
是不是又好又有效的方法?