黑马程序员技术交流社区
标题: 我怎么觉得这个代码的结果是100呢? [打印本页]
作者: yi651312197 时间: 2016-1-13 20:11
标题: 我怎么觉得这个代码的结果是100呢?
运行出来是101,我怎么觉得这个代码的结果是100呢?
public class b {
public static void main(String[] args){
int num=100;
if(num++>100)
{
num =200;
}
System.out.println(num);
}
}
作者: 洋葱头头 时间: 2016-1-13 20:41
num不是自增了1吗
作者: 放养的饼干 时间: 2016-1-13 21:53
括号里是100>100,结果为false,所以num不是200.因为num做了自加运算,所以就是101咯
作者: leleranran 时间: 2016-1-13 22:30
是101吧,因为num++是先做判断再自增,
作者: 梅菜扣肉盖饭 时间: 2016-1-14 20:30
先用100判断,false后不执行if,然后自增1,输出的就是101了
作者: ljj716yzy 时间: 2016-1-14 20:51
括号里num++,num在++前面,是先使用再自增,使用时判断num(100)>100,结果为false,然后再自增1,变成101,结果为101
作者: yi651312197 时间: 2016-1-14 21:04
懂了。判断之后还会一定会执行一次自增
作者: heima7788 时间: 2016-1-14 22:22
++在后面要先自增再运算
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |