我想在整数数组中找到偶数的数量。 到目前为止我写了这段代码
public static int EvenNum(int[] arr) {
int index = 0;
if (arr[index] % 2 == 1) {
return 0;
} else if (arr[index] % 2 == 0) {
return 1;
}
index++;
return index + EvenNum(arr);
}
请帮助我运行此代码
答案 0 :(得分:1)
您可以使用索引参数来了解要检查的数组中的位置。
public static int EvenNum(int[] arr, int index)
{
if (index == arr.length) return 0; // Stop recursion
//return (arr[index] % 2 == 0 ? 1 : 0) + EvenNum(arr, index + 1);
// or....
int result;
if ((arr[index] % 2) == 0) { // Is even
result = 1;
}
else { // Is odd
result = 0;
}
return result + EvenNum(arr, index + 1);
}
public static void main(final String... args)
{
// Start with index = 0
System.out.println(EvenNum(new int[]{1,2,3,4,5}, 0));
}
答案 1 :(得分:-1)
在EvenNum()方法中使用循环:
int evenNoCount = 0;
for (int i=0; i<arr.length();i++){
if(arr[i]%2 == 0)
evenNoCount++;
}
return evenNoCount;