在上面的声明中,<T>
是什么?
我想知道<T>
与没有它之间的区别?它如何影响代码?
答案 0 :(得分:3)
<T>
这里表示参数隐含的类型。所以:
public static <T> List<T> createList(T... args) {
List<T> ret = new ArrayList<T>(Arrays.asList(args));
}
可以使用:
List<String> list = createList("one", "two", "three");
或
List<Integer> list2 = createList(1, 2, 3);
答案 1 :(得分:1)
它只是意味着您将从您放入的方法中获得相同的类,将其保存为Object并且您必须一直投射。
答案 2 :(得分:0)
<T>
是您传递给该泛型方法的参数的类型。
答案 3 :(得分:0)
这是通用参数。如果你写的话
string s = ...;
clone(s); // will be expanded to string clone(string x)