205 自动装箱和拆箱
装箱 基本数据类型>>包装类类型
自动装箱 Integer I = 100,i = i + 100
拆箱 包装类类型>>基本数据类型
自动拆箱 i + 100
> 包装类。Java中的基本数据类型没有方法和属性,而包装类就是为了让这些拥有方法和属性,实现对象化交互
【注意】
使用包装类类型的时候,先if判断一下是否为null。。。只要是对象,在使用前就必须先判断是否为null的if判断
--------------------------------------------------------------
myInteger
it04e205
--------------------------------------------------------------
package it04e205;
public class IntegerDemo {
public static void main(String[] args) {
// 装箱 基本数据类型>>包装类类型
//write Integer.valueOf(100) first,and then press ctrl-alt-v
Integer i = Integer.valueOf(100);
//自动装箱如下。自动装箱看似没有使用方法,实则用了,只是没显示出来,JDK5后实现了这种便捷装箱
Integer ii = 100;
// 拆箱 包装类类型>>基本数据类型
//ii is a quote-type,it can't and 200 which is a base-type.
// so we transfer ii to base-type first: ii.intValue()
// and then do the calculation: +200
// and then assign to ii: ii = ...
ii = ii.intValue() + 200;
System.out.println("ii = ii.intValue() + 200,手动拆箱");
System.out.println(ii);
//自动拆箱如下
ii += 200;
System.out.println("ii += 200,自动拆箱");
System.out.println(ii);
//
// Integer iii = null;
// iii += 300;
// System.out.println("Integer iii = null;" +"iii += 300;");
// System.out.println(iii);//这样会报错,因为null是空指针
Integer iii = null;
if(iii != null){
iii += 300;
}
System.out.println(iii);
}
}