我正在尝试编写一种方法来查找数组中的重复值,并在这种情况发生两次时返回 true(否则返回 false)。
我有一些东西,但由于某种原因,它在某些情况下无法正常工作:
public static boolean twoDuplicates(int[] values) {
boolean twoDuplicate = false;
int counter = 0;
for(int i = 0; i < values.length; i++){
for(int z = i + 1; z <= values.length - 1; z++){
if(i != z && values[i] == values[z])
counter++;
}
}
if(counter == 2)
twoDuplicate = true;
return twoDuplicate;
}
现在,我测试了它,当值为 [3,3,3,6,6] 时它不起作用。有什么原因吗?
编辑:我忘了提到重复项必须是不同的。