JDK5.0新特性——泛型

Posted 名字真的很急用

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK5.0新特性——泛型相关的知识,希望对你有一定的参考价值。

集合可以存储任何类型的对象,但是当一个对象存入集合后,集合就会“忘记”这个对象的类型,将该对象取出时,这个对象的编译类型就会变成Object类型,换句话来说,在程序中无法确认一个集合中的元素到底是什么类型的。那么在取出元素时,如果进行强制类型转换就很容易出错。

import java.util.*
public class example{
public static void main(String[] args){

ArrayList list = new ArrayList();
list.add(“String”);
list.add(“collection”);
list.add(1);
for(Object obj : list){
String str =(String) obj;



向list集合中存入3个元素,分别为二个字符串和一个整数,在取出这些元素时,都将它们强制转换为String类型,由于Integer对象无法转换为String类型,因此程序在运行时就会报错。

为了解决这个问题,在JAVA中引入了“参数化类型”这个概念,即泛型。它可以限定方法的数据类型 在定义集合类是,使用“<参数化类型>”的方式指定该类中方法操作的数据类型,具体格式如下。
ArrayList<参数化类型> List = new ArrayList<参数化类型>();

把上面代码修改为如下,即可正常运行。

ArrayList list = new ArrayList();
创建集合对象并指定泛型为String类型。

以上是关于JDK5.0新特性——泛型的主要内容,如果未能解决你的问题,请参考以下文章

JDK5.0新特性——泛型

JDK5.0以后的新特性

Java 泛型

day17JDK5.0新特性与正则表达式

Java基础12(泛型)

Java基础12(泛型)