黑马程序员技术交流社区

标题: 我怎么觉得这个代码的结果是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