我想创建一个计算数组中奇数的方法,但是当我尝试返回并打印出来时,该值变为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;
}
我也无法使用参数运行方法,所以这可能是问题所在?非常感谢所有帮助
答案 0 :(得分:2)
for
循环的中间表达式应为true
以保持循环,而不是停止循环。尝试
i < b.length
%
运算符给出余数,1
表示奇数,0
表示即使2
是操作数。要计算赔率,请尝试
if (b[i] % 2 == 1){
(也添加了最后的括号)
答案 1 :(得分:0)
您的循环正在检查您的数组是否大于数组的长度 你想检查它是否小于或永远循环。将您的代码更改为小于 看看它是否能满足您的需求。