泛型
1)为什么要用泛型?
在泛型没有诞生之前,我们经常会遇到这样的问题,如以下代码所示:
ArrayList arrayList = new ArrayList();
arrayList.add("Java");
arrayList.add(24);
for (int i = 0; i < arrayList.size(); i++) {
String str = (String) arrayList.get(i);
System.out.println(str);
}
看起来好像没有什么大问题,也能正常编译,但真正运行起来就会报错:
Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
at xxx(xxx.java:12)
类型转换出错,当我们给 ArrayList 放入不同类型的数据,却使用一种类型进行接收的时候,就会出现很多类似的错误,可能更多的时候,是因为开发人员的不小心导致的。那有没有好的办法可以杜绝此类问题的发生呢?这个时候 Java 语言提供了一个很好的解决方案——“泛型”。
本文深入探讨Java中的泛型,解释了为何引入泛型以提高代码安全性和可读性,并展示了泛型的使用示例。同时,介绍了迭代器的概念和优势,通过实例阐述了如何使用迭代器统一遍历不同容器。最后,文章提供了相关面试题以巩固理解。
订阅专栏 解锁全文
896

被折叠的 条评论
为什么被折叠?



