Java 5增加的泛型

    Java 5.0中最显著的变化之一是添加对泛型类型的支持。在之前的版本中,Java程序并不是类型安全的。例如,使用List、Map等集合类实现的列表,可以用来操作整数、实数、字符串或者任何对象类型。例如:

    List stringList = new ArrayList();
    stringList.add("abcde");
    StringList.add(new Integer(5));

    在这种情况下,从字符列表中获取对象时,强制类型转换就会导致运行时异常。

    泛型是Java迈向类型安全的一个重要步骤,使用泛型可以构造出类型安全的代码。所谓泛型是指类型参数化(Parameterized Types)。

    public class GenSample< T > {}

    其中T被称为类型参数(Type Parameter),类型参数可以被替换为任何的类型,但是不能是原始类型,如int、double。

    例如下面的代码创建了一个泛型GenList。

package newpackage;

public class GenList< T > {
    private T[] elements;
    private int size = 0;
    private int length = 0;
   
    public GenList(int size) {
        this.elements = (T[])new Object[size];
        this.size = size;
    }
   
    public T get(int i) {
        if(i < this.length) {
            return this.elements[i];
        }
        return null;
    }
   
    public void add(T e) {
        if(this.length < this.size) {
            this.elements[length++] = e;
        } else {
            System.out.println("FULL");
        }
    }
}
    使用该泛型的语句示例:

GenList gl = new GenList<>(5);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值