gpt4 book ai didi

java - T是参数类型还是类类型?

转载 作者:行者123 更新时间:2023-12-01 21:18:18 26 4
gpt4 key购买 nike

我真的很抱歉,因为我以为我理解通用,但我不理解,真丢脸。

这两个有什么区别

public static <T> void c(T obj) {
System.out.println(obj.toString());
}

public static <T> void d(List<T> obj) {
System.out.println(obj.toString());
}

作为

List <Integer> l1 = Arrays.asList(new Integer[]{1,2,3});
Gen.c( l1);
Gen.d( l1);

返回相同的输出[1,2,3]

List<T> obj 的行为与 T 相同对象。

T 表示参数类型类/对象类型

最佳答案

对于c,您的T可以是任何内容,其中包括一个列表。但由于 Java 不知道它是什么,因此您无法对其执行任何特定于列表的操作。

对于d,您的T必须是一个列表。因为 Java 知道它是什么,所以您可以执行添加、删除和迭代等操作。

关于java - T是参数类型还是类类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39560831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com