黑马程序员技术交流社区

标题: 关于if()函数 [打印本页]

作者: 杨翔    时间: 2013-7-2 23:00
标题: 关于if()函数
本帖最后由 杨翔 于 2013-7-3 08:52 编辑

当我把一个boolean型的数据,扔进 if()中,然后怎么理解?有些糊涂了 。
比如下面这段吧:
boolean b = false;   
if (b)
   System.out.println("aa");
else
   System.out.println("bb");
不明白为什么会打印出bb 来,是b扔进来,if判断它是不是真? 是这样解释么
作者: 肥猫    时间: 2013-7-2 23:30
这是很基础的东西,在这里if(b)的意思就是if(!b==false)因为boolean型的默认值就是false。
作者: 黄少海    时间: 2013-7-2 23:35
if(条件表达式或者booleanl类型值)   实际上条件表达式最后就是一个boolean值 false或者true. 楼主把if(b)改为if(true)打印出来的就是aa     
b是boolean类型的值。值为false。经过if(b)中的b判断为假,相当于if(false).i大括号中的内容不执行直接跳过。执行下面的语句也就是else。打印出来的自然就是bb。

作者: lanbuohan    时间: 2013-7-2 23:44
再if(3>2)时,这个时候(3>2)就是在返回一个boolean值,这时b就代表的boolean,if判断是假,就执行否,就返回bb
作者: 宋智超    时间: 2013-7-3 00:00
以本题为例:
boolean b = false;   
if (b)
       System.out.println("aa");
else
       System.out.println("bb");


if首先对b的布尔值进行判断,
如果布尔值为ture,则执行if下面的语句,
如果布尔值为false,则执行else内的语句,
因为最初定义b=false;
所以执行else下的语句,
换言之如果开始赋值为b=true;
则会输出aa。
结果如下图所示:


我也是新人,但愿这个回答能帮到你。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2