在上面的声明中,for 是<T>
什么?
我想知道有<T>
和没有的区别?它如何影响代码?
<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);
这只是意味着您将从您输入的方法中获得相同的类,以将其保存为 Object 并且您必须一直进行转换。
这<T>
是您传递给该通用方法的参数的类型。
它是通用参数。如果你写那么
string s = ...;
clone(s); // will be expanded to string clone(string x)