自动装箱时,Java 编译器会在编译阶段将基本数据类型转换为对应的包装类对象。这种转换是隐式的,因此你可能并不直接看到它的发生。
这涉及到对象的创建和内存分配:
package com.jsu.zhang;
// 自动装拆箱 /
public class Compare {
public static void main(String[] args) {
///*******************
int i = 128;
Object object = i; / Object object = new Integer(i); /
System.out.println(object);
//*********************
Integer num3 = 128; ///(Integer、Charact...) ->Number ->object;
Integer nem4 = 128;
System.out.println(num3 ==nem4);// flase! ///共用已经创建的对象,但是有范围(常量池->存对象->数组);
String str1 = "abczxv";
String str2 = "abczxv";
System.out.println(str1 == str2);//***ture
//int num1 = 1000;
//int num2 = 1000;
//System.out.println(num1 ==num2);
//System.out.println(i);
}
}
基本数据类型转换为对应的包装类:Byte Short Integer Long Charact String Float Double