先说一个问题:为什么在JavaBean里定义整型时使用Integer而不是int
A:这与数据库查询有关,当某个字段没有值的时候Integer会为null,而int会默认返回0.
我从几个点来认识:
1.int和Integer的区别
2.int和Integer的转换(装箱与拆箱)
3.例子展示
1.区别与联系
- int是基本数据类型,Integer是一个类。That means: int可直接定义使用,Integer需要初始化
- 基本数据类型一般用于数据运算,而Integer可以调用方法进行其它操作
2.拆箱和装箱
装箱:将基本数据类型封装成类
——其实就是构造一个Integer对象,初始化Integer对象时使用基本数据类型的值赋值给value属性
public static Integer valueOf(int i) {
assert IntegerCache.high >= 127;
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i); //[-128, 127]之外的值就会重新new
}
// 赋值给value属性
public Integer(int value) {
this.value = va