Java 从数组中求奇数之和

Java 从数组中求奇数之和,java,arrays,loops,Java,Arrays,Loops,我的程序应该从数组中提取奇数,并计算奇数在数组中出现的次数 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; e、 g。 CountLobbits({3,7,2,4})应该返回2,因为数组中有两个奇数 public int countOdds (int[]

我的程序应该从数组中提取奇数,并计算奇数在数组中出现的次数

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;
e、 g。 CountLobbits({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;
public int count赔率(int[]值){
int-oddtoal=0;

对于(int i=0;i您正在检查您的计数器
i
,而不是值
values[i]

public int countorbits(int[]values){
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;
}
int-oddtoal=0; 对于(int i=0;i两件事:

  • 您没有检查数组中的任何内容-您可以使用
    值[i]
    进行检查

  • 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;
    }
    
  • 如果数组为空,会发生什么情况?您将得到一个
    NullPointerException
    。您可能需要检查:

    if(values == null) {
       return 0;
    }
    
公共整数计数几率(整数[]值){
int-oddtoal=0;
如果(值==null)
总回报率;

对于(int i=0;i)你试过调试你的代码吗?谢谢,已经解决了。@NatalieCorfe Tan如果Keppil的建议对你有帮助,你应该接受答案。这就是这个网站的工作方式。