泛型
集合类的抽象数据类型的一个关键特性是我们应该可以用他们存储任意类型的数据。一种java机制能够做到这点,它被称为泛型,也叫做参数化类型。
在每份API中,类名后的< item >记号将Item定义为一个类型参数。
自动装箱
类型参数必须被实例化为引用类型。
java的封装类型都是原始数据类型所对应的引用类型:Boolean Byte Character Double Float Integer Long Short 分别对应着boolean byte char double float int long short。
在处理赋值语句,方法的参数和算术或逻辑表达式时,java会自动在引用类型和对应的原始数据类型之间进行转换。
Stack<Integer> stack = new Stack<Integer>();
stack.put(17); //自动装箱(int->Integer)
int i = stack.pop(); //自动拆箱(Integer->int)