Java静态泛型方法的定义和使用与普通的静态方法类似,只是在方法的返回类型和参数列表中使用了泛型。
静态泛型方法的定义格式如下:
public static <T> 返回类型 方法名(参数列表) {
// 方法体
}
其中,<T>
表示泛型参数,可以是任意标识符,用于在方法中引用泛型类型;返回类型
表示方法的返回值类型;方法名
表示方法的名称;参数列表
表示方法接收的参数。
使用静态泛型方法时,可以在方法调用时指定具体的泛型类型,也可以让编译器根据方法的参数类型自动推断出泛型类型。
示例代码如下:
public class MyClass {
public static <T> void printArray(T[] array) {
for (T element : array) {
System.out.println(element);
}
}
public static void main(String[] args) {
Integer[] intArray = {1, 2, 3, 4, 5};
String[] stringArray = {"Hello", "World"};
printArray(intArray); // 调用静态泛型方法,输出整数数组
printArray(stringArray); // 调用静态泛型方法,输出字符串数组
}
}
在上面的示例中,printArray
方法是一个静态泛型方法,它接收一个泛型数组作为参数,并将数组中的元素逐个输出。在main
方法中,我们分别传入一个整数数组和一个字符串数组来调用printArray
方法,编译器会根据传入的参数类型自动推断出泛型类型,从而实现对不同类型数组的输出。