首页 > 代码库 > 泛型引起的陷阱
泛型引起的陷阱
1 package stu; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 public class TestList { 7 public static void main(String[] args) { 8 List list = new ArrayList(); 9 10 list.add("1");11 12 list.add(2); // 类型不一致13 14 list.add("3q");15 16 for (int i = 0; i < list.size(); i++) {17 18 System.out.println(list.get(i));19 20 }21 22 // 第一个循环输出无任何问题,第二个循环报出转型异常。换几话说,集合本身可以存储23 24 // 不同类型元素的对象的,只不过自从 JDK1.5之后出现了泛型,才使我们很多人觉得集合 变量仅仅能存一种类型的对象元素。25 26 // 泛型是为了在编译时更好的排除类型转换带来的繁琐检查。而在大多数应用中确实集合中就是同类型的元素。27 28 // 而泛型配合上加强的新循环, 它会强制进行单一类型的转型操作。29 30 List<String> listNew = list;31 32 for (String strNew : listNew) {33 34 System.out.println(strNew);35 36 }37 }38 }
结果:
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。