我想创建一个计算数组中奇数的方法,但是当我尝试返回并打印出来时,值变成了0。这是代码:
public static void main(String[] args) {
int b[] = {1, 2, 3, 4, 5, 6, 7, 8};
int sum = check(b);
System.out.println(sum);
}
public static int check(int[] b){
int j = 0;
for(int i = 0; i>= b.length-1;i++){
if(b[i] %2 != 2{
j++;
}
}
return j;
}
我在运行带有参数的方法时也遇到问题,所以也许这就是问题所在?非常感谢所有帮助
-
for
循环的中间表达式应该true
以保持循环,而不是停止循环。 尝试i < b.length
-
%
运算符给出余数,1
表示奇数,0
表示即使2
是操作数。 要计算赔率,请尝试if (b[i] % 2 == 1){
(还添加了结束括号)
您的循环正在检查您的数组是否大于数组的长度您想检查它是否小于或永远循环。将代码更改为小于看看它是否给了你想要的东西。