【发布时间】:2015-10-08 11:58:48
【问题描述】:
我的要求和下面类似
public List getList(XXX xxx) {
List<xxx> list = new ArrayList<xxx>();
----some logic goes here----
return list;
}
我想根据传递给方法的参数声明一个类的泛型类型。在上述方法中,xxx 可能是 String 或 Integer 或 Float。
如何做到这一点?
提前致谢
【问题讨论】:
-
public <T> List getList(T t) { List<T> list = new ArrayList<T>(); .... -
感谢您的回复。好像我得到了正确的答案。让我试着确认一下。
-
我有一个疑问。在方法签名之前提到
有什么用。 (即 public List getList ......)你能澄清一下吗? -
检查here 以获得您的澄清
-
@Natalia:
T在您的代码中毫无意义,因为它仅在参数中的一个位置使用,而不在返回中使用。相当于public List getList(Object t)
标签: java generics collections