我的程序应该从数组中获取奇数并计算奇数在数组中出现的次数。
例如 countOdds({3, 7, 2, 4}) 应该返回 2,因为数组中有两个奇数。
public int countOdds (int[] values) {
int oddTotal=0;
for(int i=0;i<values.length;i++){
if(i%2!=0){
oddTotal=oddTotal+1;
}
}
return oddTotal;
我得到了这些结果:(
来源:gyazo.com)
您正在检查您的 counteri
而不是 value values[i]
。
public int countOdds (int[] values) {
int oddTotal=0;
if(values == null)
return oddTotal;
for(int i=0;i<values.length;i++){
if(values[i]%2!=0){
oddTotal=oddTotal+1;
}
}
return oddTotal;
public int countOdds (int[] values) {
int oddTotal=0;
for(int i=0;i<values.length;i++) {
if(values[i] % 2 != 0) {
oddTotal=oddTotal+1;
}
return oddTotal;
}
两件事情:
您没有检查数组中的任何内容 - 您可以使用values[i]
.
如果你的数组为空会发生什么?你会得到一个NullPointerException
. 您可能需要检查:
if(values == null) {
return 0;
}