顺带复习一波八大基本数据类型以及他们的封装类
1.自动拆装箱的一些点
- jdk1.5之后出现的特性,虚拟机不承认,编译的时候自动补充。
- 装箱int→Integer
- 拆箱Integer→int
2.自动拆装箱什么时候发生
- 方法调用
public static Integer show(Integer i){
System.out.println(i);
return i;
}
show(3); //装箱
int result = show(3);//拆箱
- 赋值
Integer i=100; //Integer i=Integer.valueOf(100);
ArrayList<Integer> arrayList=new ArrayList<>();
arrayList.add(1);//一样
大佬的Integer源码解析 http://www.hollischuang.com/archives/1058
曾记有道面试题考equal和== Integer的valueof(参数)如果参数的值在-127到128之间,则直接从缓存中返回一个已经存在的对象。如果参数的值不在这个范围内,则new一个Integer对象返回。