首页 > 文章列表 > Java 函数泛型的泛型方法和泛型类

Java 函数泛型的泛型方法和泛型类

泛型方法 泛型类 泛型
491 2024-05-05

Java 泛型包含泛型方法和泛型类。泛型方法允许使用单个方法处理不同类型的数据,其类型由方法参数化(例如,List<T> getElements(List<T> list));泛型类允许创建可用于不同数据类型的通用类(例如,class MyGenericClass<T> { private T value; })。

Java 函数泛型的泛型方法和泛型类

Java 函数泛型的泛型方法和泛型类

泛型方法

泛型方法允许您创建方法,其中类型参数化,而不是明确指定为特定数据类型。这样,您可以使用一个方法处理不同类型的数据,而不需要为每个数据类型编写不同的方法。

public static <T> List<T> getElements(List<T> list) {
    // 在此处操作列表元素
    return list;
}

在此方法中,T 是类型变量,表示方法可以处理任何类型的数据。

实战案例:

List<Integer> intList = getElements(List.of(1, 2, 3));
List<String> stringList = getElements(List.of("a", "b", "c"));

泛型类

泛型类允许您创建类,其中的数据类型未固定,而是由参数化的类型指定。这使您可以创建可用于不同数据类型的通用类。

public class MyGenericClass<T> {
    private T value;

    public MyGenericClass(T value) {
        this.value = value;
    }

    public T getValue() {
        return value;
    }
}

在此类中,T 是类型变量,表示该类可以处理任何类型的数据。

实战案例:

MyGenericClass<Integer> intClass = new MyGenericClass<>(10);
MyGenericClass<String> stringClass = new MyGenericClass<>("Hello");