本篇文章为大家展示了在Java中使用i++时需要注意哪些问题,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、成都网站设计、古丈网络推广、微信小程序定制开发、古丈网络营销、古丈企业策划、古丈品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联公司为所有大学生创业者提供古丈建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com字节码
局部变量表
局部变量表:Local Variables,被称之为局部变量数组或本地变量表
定义为一个数字数组,主要用于存储方法参数和定义在方法体内的局部变量,这些数据类型包括各类基本数据类型、对象引用(reference),以及returnAddress类型。
由于局部变量表是建立在线程的栈上,是线程的私有数据,因此不存在数据安全问题。
局部变量表所需的容量大小是在编译期确定下来的,并保存在方法的Code属性的maximum local variables数据项中。在方法运行期间是不会改变局部变量表的大小的。
操作数栈
操作数栈:Operand Stack ,使用数组实现的。
每一个独立的栈帧除了包含局部变量表以外,还包含一个后进先出(Last - In - First -Out)的 操作数栈,也可以称之为 表达式栈(Expression Stack)
操作数栈,在方法执行过程中,根据字节码指令,往栈中写入数据或提取数据,即入栈(push)和 出栈(pop)
接下来就是本文的正式内容,首先,我们先给出两个结论:
首先我们看一下i++与++i的解析:
当i++或者++i没有涉及到其他操作时,两者是没有区别的。
// i++ public void method1(){ int i = 10; i++; } // ++i public void method2(){ int i = 10; ++i; }