A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class  ForTest4
{
        public static void main(String[] args)
        {
                boolean b =true;    //b =false

                if(b=false)
                        System.out.println("a");
                else if(b)
                        System.out.println("b");
                else if(!b)
                        System.out.println("c");
                else
                        System.out.println("d");
        }
}两种情况下结果是什么怎么来的?求大神解答


6 个回复

倒序浏览
if(b=false)这一句b被赋值成false
if--else选择最先达到条件的执行
回复 使用道具 举报
现在我知道了,我题目也给错了啊
回复 使用道具 举报
打印结果应该是C吧。变量b被第一个判断语句if(b=false) 赋值成了false,第三个选项的if(!b)就是true了。
回复 使用道具 举报
false赋值给b,if(b),就是if(false)运行else 或else if的语句,if(ture)运行if下的语句,!false就是ture
回复 使用道具 举报
看第一个if里面的是赋值运算
回复 使用道具 举报
加油,多看看视频
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马