Integer number2 = new Integer(1);
if (number2 == 1) {
System.out.println("Number2 等于 1");
} else {
System.out.println("Number2 不等于 1");
}
String str = new String("java2000");
if (str == "java2000") {
System.out.println("str2 等于 java2000");
} else {
System.out.println("str2 不等于 java2000");
}Integer number2 = new Integer(1);
为什么新建一个Interger的类的对象number2与1用==比较为真呢
number2在stack上,1在堆上。
number2代表什么
String str = new String("java2000");
str又代表什么
解决方案 »
- 关于远程视频监控问题?
- ant如何取得两层变量
- 菜鸟刚看java编程思想,留有几个问题求解
- 求一个解决方案,可以是思路,最好是代码
- 高分求助...SQLServer操作多行数据,急急急急!
- 刚学java,遇到一个简单的问题,请高手指点一下,谢谢
- java 绘图的基础问题
- 大家一起来讨论一道java面试题
- [关心Java界面的进来]Java应用程序的界面问题!
- error #553 是什么意思? variable x might not have been initialized at ...
- 用TCP连接发送BufferedImage对象
- 本人现在正在学习Java,接口这个东西一直不知道是怎么回事,今天有幸弄通了,但是还有一事不明,还忘高手不吝赐教!
number2代表一个Integer类型的变量,并赋值为1
str代表字符串变量,并赋值为java2000
判断的时候number2会 autounboxing ,得到数字 1进行比较 .
Integer number2 = new Integer(1);
和
String str = new String("java2000");
这两个是不同的,一个是int的封装数据类型,而String与Integer是不一样,
lz有时间可以去看看java编程思想,这样对你有很大的帮助....