java里的++i和i++的区别
看了好多解释都看不懂什么意思。有没有更能简单理解的解释?这里有一道题intnum=6;System.out.print(num++);System.out.print(+...
看了好多解释都看不懂什么意思。有没有更能简单理解的解释?
这里有一道题
int num=6;
System.out.print(num++);
System.out.print(++num);
我知道答案是6和8
但是单独选的时候却是6和7
谁能解释一下?谢谢 展开
这里有一道题
int num=6;
System.out.print(num++);
System.out.print(++num);
我知道答案是6和8
但是单独选的时候却是6和7
谁能解释一下?谢谢 展开
7个回答
展开全部
System.out.print(num++);
相当于:
System.out.print(num);
num=num+1;
System.out.print(++num);
相当于
num=num+1;
System.out.print(num);
楼主执行完第一个输出的时候输出6,此时num=6+1=7
执行第二个输出的时候,num=7+1=8,输出8。
相当于:
System.out.print(num);
num=num+1;
System.out.print(++num);
相当于
num=num+1;
System.out.print(num);
楼主执行完第一个输出的时候输出6,此时num=6+1=7
执行第二个输出的时候,num=7+1=8,输出8。
更多追问追答
追问
那为什么num++的时候不是打印出7来而是6?那个1去哪里了?(++num不存在的情况下)
追答
没有System.out.print(++num);这句的时候,打印是在+1之前的
楼主看我的代码的顺序,是先打印的num值,打印完了,num才加的1,不信楼主可以这么试一下。
System.out.print(num++);
System.out.print(num);
结果肯定是6和7
展开全部
++在后面,就是用了再加
++在前面,就是加了再用
所以,System.out.println(i++)中,++在后面,所以就是用了再加,故而先用了i,再把i+1.。
反正我就是这样记得。。楼主可以参考下
++在前面,就是加了再用
所以,System.out.println(i++)中,++在后面,所以就是用了再加,故而先用了i,再把i+1.。
反正我就是这样记得。。楼主可以参考下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实很简单
++i ++在左边的,先++在往下执行
如: int i = 5
System.out.println(++i) //输出6 (++在左边,先++在往下执行)
i++先执行 在++
如: int i = 5
System.out.println(++i) //输出5 (++在右边,先输出在++) 这行代码执行完,i的值,其实是6了
++i ++在左边的,先++在往下执行
如: int i = 5
System.out.println(++i) //输出6 (++在左边,先++在往下执行)
i++先执行 在++
如: int i = 5
System.out.println(++i) //输出5 (++在右边,先输出在++) 这行代码执行完,i的值,其实是6了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
workdinner回答的很对,i++使用后加1,++i使用前加1;
所以单独用的话是显示6和7,
你在一起用先显示i++,显示的是6,但i=i+1=7,再用++i所以显示8
所以单独用的话是显示6和7,
你在一起用先显示i++,显示的是6,但i=i+1=7,再用++i所以显示8
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int num=6;
System.out.print(num++);//先输出num(为6),然后sum自加1
System.out.print(++num);//num先自加1,此时num为6+1+1,然后输出num(为8)
如果单独选 那么num只是加了一次 所以为7
你明白了吗?
System.out.print(num++);//先输出num(为6),然后sum自加1
System.out.print(++num);//num先自加1,此时num为6+1+1,然后输出num(为8)
如果单独选 那么num只是加了一次 所以为7
你明白了吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询