j初始值为0,j=j++;循环100遍值为多少?

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 111 收藏 0 点赞 0 评论 0

int j = 0;
for (int i = 0; i < 100; i++){
j = j++;
}
System.out.println(j);

结果会让你很傻眼:0

为什么会出现这种情况?原因是每次运行j=j++,都是将j本身赋值给j,并且当次循环结束!下次仍然又将0赋给j。所以最终的答案为0。如何避免呢?可以将表达式改为:j=++j 。

评论列表
文章目录