黑马程序员技术交流社区
标题:
感觉这道题的结果该是C,但是运行却是b,是怎么运行的?
[打印本页]
作者:
wuzeshui
时间:
2016-1-16 00:50
标题:
感觉这道题的结果该是C,但是运行却是b,是怎么运行的?
boolean b = true;
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");
作者:
qt520
时间:
2016-1-16 08:08
就是b啊,b是true
之前有个帖子答案是c是因为if(b=false),你这个是if(b==false)
作者:
leleranran
时间:
2016-1-16 08:19
第一个 是赋值语句,赋值后b的值是true,第一个if括号中是比较表达式,结果是布尔类型,true不等于false,所以if中的语句不执行,进入第一个else if语句,是b==true,判断为true所以执行
作者:
wangjianfeng
时间:
2016-1-16 10:28
b=true是赋值语句,if(b==false)相当于true 和false相等吗?肯定不相等.a就肯定不会被打印,跳到b,此时b是true,将会执行打印b那条语句
作者:
宋达思
时间:
2016-1-16 10:32
记住,无论是判断语句还是循环语句,判断表达式或循环条件表达式内的结果一定是boolean类型的,只有true和false这两种,只有结果为true时,才会执行里面的语句。我表达的未必到位,但基本是这个意思,记住这点,你就知道该如何运行了。
作者:
Tkight
时间:
2016-1-16 10:56
果断B啊 b=true 如果b等于假 则执行a不满足条件1则执行条件2,条件2如果是真则执行下列,b=真 执行跳出循环。
作者:
z195061
时间:
2016-1-16 12:48
这道题有考过,是C
作者:
ContainsM
时间:
2016-1-16 14:01
z195061 发表于 2016-1-16 12:48
这道题有考过,是C
考过? 选C? 对了?
作者:
heima7788
时间:
2016-1-16 22:25
选b,c中!b是false
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2