我的程序应该从数组中取奇数并计算数组中奇数出现的次数。
e.g。 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;
我得到的结果如下: my results http://gyazo.com/e802b78671018a23b73402ecfeb9b994.png
答案 0 :(得分:7)
您正在检查计数器i
,而不是值values[i]
。
答案 1 :(得分:1)
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;
答案 2 :(得分:0)
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;
}
答案 3 :(得分:0)
两件事:
您没有检查数组中的任何内容 - 您可以使用values[i]
执行此操作。
如果你的数组是null,会发生什么?你会得到一个NullPointerException
。您可能想要检查:
if(values == null) {
return 0;
}