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又代表什么
解决方案 »
- 今天面试 面试题不会 求各位大侠给看看谢谢啦
- JAVA基础编程题(一)
- Dialog弹出问题II
- 如何用程序列出一个包下的所有子包?
- 为什么我的程序在压成jar文件之前可以执行,压了以后会出现Exception in thread "main" java.lang.NoClassDefFoundError:?
- 如何算的当前鼠标下的JTable的cell?
- 请大家帮我看看这道java题
- 安装jsee时,还是失败!!请教各位大侠帮助!!
- java初学者,求会java的表哥指点下 ,一个温度转换器,开始暂停控制播放音乐,根据温度判断输出相应的图片。我目前图片显示不出来,不知道哪里错了,求指点
- 静态构造代码块、构造代码块、构造方法的顺序问题。
- 用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编程思想,这样对你有很大的帮助....