public static void main(String[] args) {
int j = 0;
for(int i = 0; i < 100 ; i ++){
j = j ++;
}
System.out.println(j);
}
关于这段代码,的输入结果0.请说明你的看法.
我的分析是:
JVM栈中每次进行运算的时候,都会复制一份值. 为什么这么说列?
看这句:
j = j++;
先将j的值赋给前面的j,再对j进行++操作,
如果在内存中,前面的j和后面的j如果不是分别有自己的内存地址,请问为什么进行++操作以后,j在第下一次循环的时候值仍为0?
===============================解答================
你需要补补汇编相关知识,程序执行不单单在内存,cpu的寄存器才是真正运算的地方,内存可以视为cpu的存储。
j = j + 1的计算过程
从j的内存地址读入寄存器,做+1操作后重新放回内存
j++的问题跟cpu的解释行为有关,如果你上过c课程,比较负责的教材都会强调,不要使用这种容易造成混淆且与编译环境有关的编码方式。
实际来说,j = j++在执行时优先执行j = j并存会内存,然后在寄存器中++,所以才有0的结果。
分享到:
相关推荐
java基础试题.doc
Java 基础试题涵盖了Java语言的多个核心概念,包括语法、类与对象、方法、标识符、数据类型、运算符、流程控制以及输入输出等。以下是对这些知识点的详细解释: 1. **字节码文件扩展名**:Java源代码(.java文件)...
这些资源包括面试问题合集、整理的资料、Android面试题、学员入学面试总结、面试技巧、必须掌握的重点知识以及基础测试和入学考试题等,旨在全面覆盖Java基础知识和面试必备技能。 首先,面试问题合集和整理的资料...
Java基础试题及其答案
Java基础试题及答案.pdf文件提供了Java基础知识的试题和答案,涵盖了Java语言的基本语法、数据类型、运算符、控制结构、函数、数组、对象、继承、多态、抽象、接口、异常处理等方面的知识点。下面是从该文件中总结出...
1. **Java基础语法**:Java的基础包括变量声明、数据类型(如基本类型与引用类型)、运算符、流程控制(如if语句、switch语句、for循环、while循环等)。此外,还需理解方法的定义与调用,以及类和对象的创建。 2. ...
java基础试题.pdf
JAVA基础试题.pdf
这份“Java基础试题(附答案)”涵盖了Java语言的核心概念,旨在帮助学习者巩固和检验他们的理解程度。以下是一些关键知识点的详细说明: 1. **Java简介**:Java是由Sun Microsystems公司开发的一种面向对象的编程...
Java 基础试题答案 Java 是一种广泛使用的高级编程语言,以下是对 Java 基础试题答案的知识点总结: 选择题 1. Java 语言的特点:Java 语言是一种区分大小写的语言,源文件名与 public 类型的类名必须相同,...
标题中的“java基础试题和赛船游戏”暗示了这篇内容可能包含了两部分:一是Java基础知识的测试题目,用于考察和学习Java编程语言的基础概念;二是关于一个赛船游戏的实现,可能涉及到算法、多线程或者游戏设计。描述...
这份"java基础试题答案.zip"压缩包文件提供了丰富的Java面试复习题,涵盖了Java的基础知识点,非常适合新手进行练习和自我测试。现在,我们将深入探讨这些知识点。 1. **Java简介**:Java是由Sun Microsystems开发...
Java基础试题.pdf
这份"JAVA基础试题200题"提供了全面的学习和复习Java基础知识的机会。这些试题覆盖了从语法、面向对象特性到异常处理、集合框架等多个核心概念,旨在帮助初学者巩固基础,同时也适合有一定经验的开发者进行自我检测...
Java基础试题及答案.doc
JAVA基础试题[汇编].pdf
以下是一些关于Java基础的重要知识点: 1. **大小写敏感**:Java 语言是区分大小写的,变量、类名、方法名等标识符的大小写必须严格遵循命名规则。 2. **源文件扩展名**:Java 程序源文件的扩展名为“*.java”,而...
3. 这里给出的题目是Java基础的多选题、填空题和问答题,涵盖了Java语言基础、数据结构、面向对象、类和接口、异常处理、字符串比较以及数组操作等多个方面,这些都是Java初学者需要掌握的基本概念和技术。...
本文将对Java基础习题进行解析,总结出Java语言的核心知识点。 一、变量和数据类型 * 变量:在 Java 中,变量是存储数据的容器。变量的声明格式为:`类型 变量名 = 初始值;`例如:`int a = 10;` * 数据类型:Java ...