将 int[][] 作为泛型参数传递
2022-09-02 10:01:58
public static <T> void func1(T[][] arr) {
...
}
public static <T> void func2(T[] arr) {
...
}
我正在尝试传递一个二维数组。int[][] arr
我不能使用,但我可以使用func1(arr)func2(arr)
有人可以解释一下这是怎么回事吗?
public static <T> void func1(T[][] arr) {
...
}
public static <T> void func2(T[] arr) {
...
}
我正在尝试传递一个二维数组。int[][] arr
我不能使用,但我可以使用func1(arr)func2(arr)
有人可以解释一下这是怎么回事吗?
T[]表示某个泛型对象的数组。任何数组类型(包括 )都是一个对象。因此,在 .int[]int[][]T[]T = int[]
但是,因为 不是对象,所以不是有效的 。intint[][]T[][]
如果使用 代替 ,则应该能够:Integerint
func1Integer[][] arr
func2Integer[] arrInteger[][] arr