Java包装类型
包装类型
Java中把类型分为两种:基本类型和引用类型。包装类型的出现是为了把基本类型视为引用类型。
实际上,因为包装类型非常有用,Java核心库为每种基本类型都提供了对应的包装类型。
基本数据类型 | 包装类(Wrapper Class) | 默认值 | 缓存范围(如适用) |
---|---|---|---|
byte | Byte | 0 | -128 ~ 127 |
short | Short | 0 | -128 ~ 127 |
int | Integer | 0 | -128 ~ 127 |
long | Long | 0L | -128 ~ 127 |
float | Float | 0.0f | 无缓存 |
double | Double | 0.0d | 无缓存 |
char | Character | ‘\u0000’ | 0 ~ 127 |
boolean | Boolean | false | true 和 false |
int i=11;
//Integer integer=new Integer(i);已弃用
Integer integer=Integer.valueOf(i);
System.out.println(integer.intValue());
Auto Boxing
Java中基本类型和对应的包装类型可以自动转换。
int i1=232;
Integer integer1=i1; //自动装箱
Integer integer2=Integer.valueOf(88);
int i2=integer2; //自动装箱
自动装箱和自动拆箱都只发生在编译阶段。
不变类
所有的包装类型都是不变类。一旦创建了包装类型对象,该对象就是不变的。
对包装类型的比较要使用equals
方法。