i=i++
来源:互联网 发布:悉尼大学 住宿 知乎 编辑:程序博客网 时间:2024/05/16 19:27
今天阅读《编写高质量代码:改善Java程序的151个建议》,有一个很有趣的问题,i++ 与 i= i++居然不一样。(见书 建议7 自增的陷阱)
书中解释了一番,不满意,凭什么你这么解释就是对的?
后来,百度的时候有人提到源码,可是又是栈,又是堆的,太底层了,让小白难以接受。
然后就直接在idea中,敲了下demo,然后看输出的.clss反编译文件,豁然开朗。
代码如下:
public class Demo { public static void main(String[] args) { int count = 0; for (int i = 0; i < 10; i++) { count = count++; System.out.println(count); } System.out.println("end: "+count); }}
idea 的反编译文件:
由反编译文件可以清晰的发现,为什么Java中 i= i++。
主要是提下醒,有些难以解释的简单代码,看看代码的反编译文件,有可能就解决了。
阅读全文
0 0
- 大话 i++、++i和i=++i、i=i++
- k=(++i)+(++i)+(++i)
- i = i++;i=++i
- i=i++; i=++i
- ++i *=i与 i++*= i
- 关于i++;++i;以及i=i++
- i++ ,++i,i=i++的问题
- i++ ,++i,i=i++的问题
- i++,++i,i=i+1 分析
- i = i++;
- a[i] = i++;
- I=I++
- i = i++;????
- 解释:i=i++
- i = &i
- i++ ++i区别 +=
- java i=i++
- i=i++分析
- 六个企业管理层不可不知的思维导图模板
- 【入门】java基础--1
- JavaScript函数
- python2017下载地址及激活
- 日期转化问题
- i=i++
- 【南阳理工】 17 单调递增最长子序列 【模板】
- 进销存安卓盘点机二维采集器pda扫描出入库扫码无线同步手持终端
- Hadoop集群搭建Hbase
- Material Design整理(六)——SearchView及FlexboxLayout
- Eclipse根据wsdl文件自动生成webservice client图解,以及调用示例,附测试项目
- fetch+promise
- Git-版本回退(笔记)
- JS获取当前浏览器名及版本号