/**
* 8种基本类型的包装类和对象池
* 包装类:java提供的为原始数据类型的封装类,如:int(基本数据类型),Integer封装类。
* 对象池:为了一定程度上减少频繁创建对象,将一些对象保存到一个"容器"中。
*
* Byte,Short,Integer,Long,Character。这5种整型的包装类的对象池范围在-128~127之间,也就是说,
* 超出这个范围的对象都会开辟自己的堆内存。
*
* Boolean也实现了对象池技术。Double,Float两种浮点数类型的包装类则没有实现。
* String也实现了常量池技术。
*
* 自动装箱拆箱技术
* JDK5.0及之后允许直接将基本数据类型的数据直接赋值给其对应地包装类。
* 如:Integer i = 3;(这就是自动装箱)
* 实际编译代码是:Integer i=Integer.valueOf(3); 编译器自动转换
* 自动拆箱则与装箱相反:int i = (Integer)5;
*/
public class Test {
public static void main(String[] args) {
//基本数据类型常量池范围-128~127
Integer n1 = -129;
Integer n2 = -129;
Long n3 = 100L;
Long n4 = 100L;
Double n5 = 12.0;
Double n6 = 12.0;
//false
System.out.println(n1 == n2);
//true
System.out.println(n3 == n4);
//false
System.out.println(n5 == n6);
//String常量池技术,注意:这里String不是用new创建的对象
String str1 = "abcd";
String str2 = "abcd";
//true
System.out.println(str1 == str2);
}
}
8种基本类型的包装类和常量池简单介绍
最新推荐文章于 2024-08-01 17:16:20 发布