📅  最后修改于: 2023-12-03 15:11:04.775000             🧑  作者: Mango
泛型是一种程序设计思想,它可以更通用地编写代码,使其能够处理不同类型的数据而不需要编写每种类型的代码。简而言之,泛型可以让同一个函数或类适用于许多不同的数据类型。
在编程语言中,泛型通常是由类型参数(type parameter)来实现的。下面是一个使用泛型的例子:
public class Pair<T1, T2> {
private T1 first;
private T2 second;
public Pair(T1 first, T2 second) {
this.first = first;
this.second = second;
}
public T1 getFirst() {
return first;
}
public T2 getSecond() {
return second;
}
}
在这个例子中,Pair
是一个泛型类,它有两个类型参数 T1
和 T2
。这个类的实例代表一个有两个元素的元组,第一个元素的类型是 T1
,第二个元素的类型是 T2
。由于这是一个泛型类,因此 T1
和 T2
可以是任何类型(例如整数、字符串、自定义类等等)。
下面是一个使用 Pair
的例子:
Pair<String, Integer> p1 = new Pair<>("Apple", 1);
Pair<Integer, Double> p2 = new Pair<>(2, 3.14);
在这个例子中,我们创建了两个 Pair
的实例。第一个实例 p1
的第一个元素是一个字符串 "Apple",第二个元素是一个整数 1。第二个实例 p2
的第一个元素是一个整数 2,第二个元素是一个双精度浮点数 3.14。
使用泛型可以使代码更加通用、灵活,并且可以避免代码重复。但是,泛型也有一些局限性,例如在使用泛型时不能使用基本类型(例如 int
、float
等),只能使用对象类型(例如 Integer
、Float
等)。
总之,泛型是一种强大的程序设计思想,可以提高代码的重用性和可读性,特别是在处理不同类型的数据时。