参考如下两段代码:
public class Test{
public static void main(String [] lkl){
boolean flag = false;
if(flag = true){
System.out.println("true");
}else{
System.out.println("false");
}
}
}
/*该程序输出结果为true,因为if条件语句通过赋值之后结果为true*/
public class Test{
public static void main(String [] lkl){
int flag = 520;
if(flag = 521){
System.out.println("true");
}else{
System.out.println("false");
}
}
}
/*该程序执行过程中会报错:Type mismatch: cannot convert from int to boolean.表明类型不匹配*/
总结:Java的条件判断括号内表达式最终返回的结果应该为boolean类型,否则会编译出错