Java 无法从int转换为boolean? publicstaticvoidmain(字符串[]args){ int[]newArray=newint[4]; int[]数组={4,5,6,7}; 奇偶(阵列); 新数组[0]=数组[0]+数组[1]+数组[2]+数组[3]; newArray[1]=数组[0]*数组[1]*数组[2]*数组[3]; } 公共静态无效奇偶(int[]奇偶){ 对于(int i=0;i

Java 无法从int转换为boolean? publicstaticvoidmain(字符串[]args){ int[]newArray=newint[4]; int[]数组={4,5,6,7}; 奇偶(阵列); 新数组[0]=数组[0]+数组[1]+数组[2]+数组[3]; newArray[1]=数组[0]*数组[1]*数组[2]*数组[3]; } 公共静态无效奇偶(int[]奇偶){ 对于(int i=0;i,java,casting,int,boolean,Java,Casting,Int,Boolean,,if侧的表达式应实现为布尔值,否则java中的编译错误 试一试 甚至(根据要求) 见 表达式的类型必须为boolean或boolean,否则会发生编译时错误 但实际上应该是!=0,以便与(mis)具有相同的语义在类C语言中使用int作为布尔值…arghh我忘了。谢谢。因为在Java中,不能将int转换为boolean。%运算符的结果是int类型,无论除数是什么。if需要括号中的boolean表达式。 public static void main(String[] args) { in

if
侧的表达式应实现为
布尔值,否则java中的编译错误

试一试

甚至(根据要求)

表达式的类型必须为boolean或boolean,否则会发生编译时错误


但实际上应该是
!=0
,以便与(mis)具有相同的语义在类C语言中使用int作为布尔值…arghh我忘了。谢谢。因为在Java中,不能将
int
转换为
boolean
%
运算符的结果是
int
类型,无论除数是什么。
if
需要括号中的
boolean
表达式。
public static void main(String[] args) {
    int [] newArray= new int [4];
    int [] array = {4,5,6,7};
    oddEven(array);

    newArray[0] = array[0]+array[1]+array[2]+array[3];
    newArray[1] = array[0]*array[1]*array[2]*array[3];
}

public static void oddEven(int [] oddEven) {

    for (int i=0; i<oddEven.length; i++) {
        //  Cannot convert from int to boolean
        if (oddEven[i] % 2)

    }
}
       if (oddEven[i] % 2 ==0)  {
       }
       if (oddEven[i] % 2 !=0)  {
       }