java中 关于a = a++; 与 a = ++a; 的问题
来源:互联网 发布:淘宝店铺设计公司 编辑:程序博客网 时间:2024/04/26 16:48
java代码
int a = 0; a = a++;
JVM 指令
0: iconst_0 //常量0 进栈1: istore_1 //将栈顶数据赋值给第一个变量2: iload_1 //将第一个变量进栈3: iinc 1, 1 //第一个变量值加16: istore_1 //栈顶数据赋值给第一个变量
0:
局部变量数据 a ;
栈数据 0
1:
局部变量数据 a = 0;
栈数据 0
2:
局部变量数据 a = 0;
栈数据 0 | 0
3:
局部变量数据 a = 1;
栈数据 0 | 0
6:
局部变量数据 a = 0;
栈数据 0 | 0
Java 代码
int a = 0;a = ++a;
JVM 指令
0: iconst_0 // 常量0进栈1: istore_1 // 将栈顶数据赋值给第一个变量2: iinc 1, 1 // 第一个变量值加15: iload_1 // 将第一个变量进栈6: istore_1 // 将栈顶数据赋值给第一个变量
0:
局部变量数据 a ;
栈数据 0
1:
局部变量数据 a = 0;
栈数据 0
2:
局部变量数据 a = 1;
栈数据 0
5:
局部变量数据 a = 1;
栈数据 1 | 0
6:
局部变量数据 a = 1;
栈数据 1 | 0
0 0
- java中 关于a = a++; 与 a = ++a; 的问题
- 在Java中,关于a=a+b与a+=b的区别
- 关于C语言中a=a++与a=++a的研究
- java中关于a!=a的例子~.~!
- java与c/c++ 的 a=a++ 问题
- 关于a ++ 与++ a的问题
- a = a++ 与 a = ++a
- Java中a=a+3与a+=3的区别
- java中,a=a+b与a+=b的异同
- 关于 (++a)+(++a)+(++a) 和 (a++)+(a++)+(a++) 问题
- 关于a ++ 与 ++a
- 关于a-- - --a或--a - a--的问题
- Java--a++与 ++a 与 a=a+1 与a+=1
- 求Sn=a+a*a+a*a*a+a*a*a*a的和,其中a是一个数字。
- 关于null != a 与 a != null 的区别
- (++a)+=(a++)和(++a)=(++a)+(a++)的区别
- (++a)+=(a++)和(++a)=(++a)+(a++)的区别
- Java面试题之:关于Java中a=a++;的结果
- to_char,to_date和to_number
- sql的开发规范
- spring clound 之 springcloud config 入门
- JVM调优总结(参考深入理解Java虚拟机书籍)
- 解决,APP运行中找不到so库的问题
- java中 关于a = a++; 与 a = ++a; 的问题
- Shell脚本学习之expect命令
- 解决AndroidStudio2.2初装的几个问题
- 如何修改物料的计价方式
- HDU-1087-Super Jumping! Jumping! Jumping!(DP)
- 多行数据提交到Struts的ActionForm的List属性中
- Java_04
- 踩过的坑,都是有原因的
- 设计模式读书笔记-----建造者模式