2013-06-29 108 views

回答

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); 
} 
+0

一个问题的方法将采取行动:可我指定的隐含参数也是T型的? – user2460978

+0

@ user2460978定义“隐式参数” – fge

+0

@ user2460978您是指引用方法被调用的对象还是别的东西? – Malcolm

3

这里,T是通用参数。请参阅tutorial

返回类型为void,因为该方法的签名是void someMethod()

3

其中T是正常的generic object representation in java

由尖括号(<>)分隔的类型参数部分位于类名后面。它指定了类型参数(也称为类型变量)T1,T2,...和Tn。

Defining Methods

返回类型-的由该方法返回的值的数据类型,或void如果方法不返回值。

1

<T> void someMethod()的一般声明<T>不具备的功能,因为T没有在的someMethod的签名其余的任何其他部分引用。在这种情况下,它意味着什么,可以被删除。

返回类型无效。

相关问题