老师,今天上课讲的不输出那题还是不懂,能够再解释一遍吗?
boolean i=false;
if (i=false)
system.out.println(i)
为什么结果是不输出。
我的理解是当条件为假时,执行输出i,那结果不是为flase吗?
判断变量和值是否相同,不能使用单个等于号,应该使用双等于号,即: if (i==false) 如果使用单等于号,则表示赋值,即将false赋予i变量,这个赋值操作没有错误,同时赋值完毕,表达式值为赋的值,即false,所以if条件为false,所以没有执行输出语句
不知还有无疑问?
老师,如果我把题中所有的false都改成true,最后输出结果是不是true?
public class exec
{
public static void main(String args[])
{
boolean i=false;
if(i=false)
{
System.out.println(i);
}
else
{ System.out.println("123");
}
}
}
老师,为什么这个最后是输出的是123,我对于前面这个问题还是不太理解
你觉得呢
建议上机试一试,你的猜测是正确的
老师,我可不可以这样理解:
因为if里面是条件,只有条件通过才会执行语句块里的内容,if(flase)是没有条件, 语句块里的内容不会被执行,对吗?
准确的理解是:
因为if里面的条件为真,只有条件为真才会执行语句块里的内容,if(false)是条件为假,语句块里的内容不会被执行