转型

十四,泛型(Generics)

霸气de小男生 提交于 2021-02-15 19:23:35
1. 泛型介绍 Java 泛型编程是 JDK1.5 版本后引入的 . 泛型让编程人员能够使用类型抽象 , 通常用于集合里面 . 最大的特点是泛型中的属性可以由外部决定 . 类的泛型声明格式 : class 类名称 < 泛型类型 , 泛型类型 ... ...>{} 示例 : List myIntList=new LinkedList(); myIntList.add(new Integer(0)); Integer x=(Integer)myIntList.iterator().next(); // next()返回的是Object,所以必须强转 注意第 3 行 , 存储在 List 里面的对象类型是 Integer, 但是在返回列表中元素时 , 还是必须强制转换类型 , 这是为什么呢?原因在于 , 编译器只能保证迭代器的 next() 方法返回的是 Object 类型的对象 , 为保证 Integer 变量的类型安全 , 所以必须强制转换 . 这种转换不仅显得混乱 , 更可能导致类型转换异常 ClassCastException, 为保证操作安全 , 减少转换发生错误 , 而泛型使取出变得非常容易 , 不需要再使用向下转型 . 这就是泛型设计的初衷 . 示例 : List<Integer> myIntList=newLinkedList<Integer>(); myIntList