1. 自动装箱与拆箱
基本类型与包装类直接可以互相转换。
int i = 100;
Integer n = Integer.valueOf(i);
int x = n.intValue();
有时,这样可能还会觉得比较麻烦,所以Java编译器为我们提供了自动装箱与自动拆箱。
Integer n = 100; // 自动装箱
int x = n; // 自动拆箱
注意,自动装箱和自动拆箱仅在编译期间就完成,编译器会自动帮我们替换,虚拟机看到如下:
Integer n = Integer.valueOf(i);
int x = n.intValue();
注意,自动拆箱包装类为null
时会引发NullPointerException
。
2. 几个点
- 包装类之间的比较必须使用
equals()
。 - 整数和浮点数的包装类都继承自
Number
。 - JavaBean是一种符合命名规范的
class
,它通过getter
和setter
来定义属性。