我希望能够判断int []中的任何数字是否出现3次或更多次?我怎样才能做到这一点?
有方法会很棒
boolean hasTriples(int[] numbers) {
//some code
}
Run Code Online (Sandbox Code Playgroud)
创建Map<Integer, Integer>,并让整数ñ地图的出现的次数ñ.
循环遍历数组以填充地图,然后循环遍历地图中的键以检查哪些键映射到值> = 3.
这里有一些代码可以帮助您入门:
int[] arr = { 1, 3, 2, 3, 3, 4, 2, 2 };
Map<Integer, Integer> counts = new HashMap<Integer, Integer>();
// Count occurrencies
for (int i : arr) {
if (!counts.containsKey(i))
counts.put(i, 0);
counts.put(i, 1 + counts.get(i));
}
// Print how many times each number occurs in arr.
for (int i : counts.keySet())
System.out.printf("i: %d, count: %d%n", i, counts.get(i));
Run Code Online (Sandbox Code Playgroud)