< T >
中< T > void someMethod()
的含义是什么?这个函数有什么返回类型?
答案 0 :(得分:5)
<T>
不是返回类型,void
是。在这种情况下,<T>
表示类型变量,仅在此方法中使用。例如,如果我写这个:
<T> T getFirstValue(List<T> list) {
return list.get(0);
}
这意味着如果我给包含某些特定类型的对象的列表,它将返回这种确切类型的对象。例如,如果我给它List<String>
,我知道我会找回String
。编译器猜测T
实际上是String
,因此该方法将充当
String getFirstValue(List<String> list) {
return list.get(0);
}
答案 1 :(得分:3)
这里,T
是通用参数。请参阅tutorial。
返回类型为void
,因为方法的签名为void someMethod()
。
答案 2 :(得分:3)
其中T是正常generic object representation in java。
由尖括号(&lt;&gt;)分隔的类型参数部分跟在类名后面。它指定类型参数(也称为类型变量)T1,T2,...和Tn。
返回类型 - 方法返回的值的数据类型,如果方法未返回值,则返回void。
答案 3 :(得分:2)
在< T > void someMethod()
中,泛型声明<T>
没有函数,因为在someMethod的其余签名的任何其他部分中都没有引用T.在这种情况下,它意味着什么,可以删除。
返回类型无效。