`
Brucegaochina
  • 浏览: 40646 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java中的++运算符

阅读更多
public class PlusPlusTest {

	/**
	 * @param args
	 * @author Bruce
	 */
	public static void main(String[] args) {
		int a = 0;
		for (int i = 0; i < 10; i++) {
			a = a++;
		}
		System.out.println(a);
	}

}


输出结果是0

解释:在这里jvm里面有两个存储区,一个是暂存区(是一个堆栈,以下称为堆栈),另一个是变量区。

语句istore_1是将堆栈中的值弹出存入相应的变量区(赋值);语句iload_1是将变量区中的值暂存如堆栈中。

因为a = a++;是先将a的值(0)存入堆栈,然后对变量区中的a自加1,这时a的值的确是1,但是随后的istore_1又将堆栈的值(0)弹出赋给变量区的a,所以最后a = 0。

又因为a = ++a;是先对变量区中的a自加1,然后再将变量区中a的值(1)存入堆栈,虽然最后执行了istore_1,但也只是将堆栈中的值(1)弹出赋给变量区的a,所以a = ++a;的结果是a = 1。
分享到:
评论

相关推荐

    javaJava运算符+(优先级、目数)

    Java运算符+(优先级、目数)

    Java运算符+(优先级、目数)+.doc

    Java运算符是编程中至关重要的组成部分,它们用于执行各种计算和逻辑操作。了解运算符的优先级和目数对于编写高效、准确的代码至关重要。在Java中,运算符按照其功能分为不同的类别,并且有不同的结合性和目数。 1....

    Java中的运算符Java中的运算符

    Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java中的运算符Java...

    Java+Java基础知识+基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合熏硫胺+字符串等

    Java基础知识,其中包括基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合训练+字符串+集合&学生管理系统+学生管理系统升级版+面向对象进阶(static&继承+多态+包&final&权限+抽象类&...

    Java运算符+优先级、目数+.pdf

    Java运算符优先级和目数 Java是一种面向对象的编程语言,它的运算符和目数是编程的基础,本文将详细介绍Java中的运算符优先级和目数。 一、点运算符(.)和圆括号([]) Java中的点运算符(.)和圆括号([])是...

    JAVA+零基础学JAVA+运算符教程

    本文将详细讲解Java中的运算符及其在实际编程中的应用。 首先,我们要了解Java中的类型转换。类型转换分为两种:自动类型转换和强制类型转换。自动类型转换发生在数据范围小的类型向数据范围大的类型转换时,例如,...

    浅谈c i++与java i++的区别

    但是,c语言和java语言在使用increment运算符时存在着一些区别,这篇文章将深入探讨c语言和java语言中i++的区别。 首先,让我们来看一下c语言中的i++。在c语言中,i++是后缀自增运算符,也就是说,它会先返回变量的...

    28.java运算符.zip

    28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符.zip28.java运算符...

    java运算符小程序

    Java运算符是编程语言中用于执行特定操作的关键符号,它们在Java程序中起着至关重要的作用,帮助我们处理数据和控制程序流程。在这个"java运算符小程序"中,我们可以探索和学习Java中的各种运算符及其用法。 1. **...

    编程语言中++i与i++运算符的区别及性能分析

    内容概要:本文详细介绍了前置自增(++i)和后置自增(i++)运算符的区别及其应用场景,涵盖C/C++、Java、JavaScript等多门语言。重点讨论了两者在返回值、执行顺序以及在复杂表达式中的差异,并探讨了编译器优化的...

    java运算符优先级表

    非常详细的java运算符优先级表,帮助记住优先级顺序

    趣谈C语言和JAVA中的++和--

    无论是在C语言还是Java语言中,这两种运算符都有着广泛的用途,并且能够极大地简化代码的编写过程。然而,对于初学者来说,正确理解和运用这两个运算符并不是一件容易的事情,特别是当它们与其他运算符组合在一起...

    java学习-java的运算符

    本资料包"java学习-java的运算符"是针对Java运算符的学习资源,旨在帮助你深入理解和熟练运用Java中的各种运算符。 1. **算术运算符**:Java中的算术运算符包括加法(+)、减法(-)、乘法(*)、除法(/)和取余...

    java 算术运算符的资源

    在Java编程语言中,算术运算符是进行基本数学计算的关键元素。它们允许我们执行加法、减法、乘法、除法等操作。本文将深入探讨Java中的算术运算符,以及它们如何用于处理数值。 1. 基本算术运算符: - 加法 (+):...

    Java运算符的使用

    Java运算符是编程中不可或缺的部分,它们用于执行各种计算和逻辑操作。Java提供了四大类运算符:算术运算符、位运算符、关系运算符和逻辑运算符。 1. **算术运算符**: - `+`:加法运算,可用于整数、浮点数的相加...

    Java运算符介绍.pptx.pptx

    Java运算符是编程语言中不可或缺的部分,它们帮助程序员执行各种计算和逻辑判断。在Java中,运算符主要分为四大类:算术运算符、关系运算符、逻辑运算符和位运算符。 1. **算术运算符** - 加法运算符 (+):将两个...

    13.java位运算符.zip

    13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位运算符.zip13.java位...

    9.java赋值运算符.zip

    9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip9.java赋值运算符.zip...

    35.java三元运算符.zip

    35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元运算符.zip35.java三元...

Global site tag (gtag.js) - Google Analytics