我想创建一个泛型方法,获取Collection<T>
作为参数,对元素(映射)执行某些操作并返回Collection<R>
。 这不是一个问题,声明如下:Java泛型,嵌套类型参数
public <R,T> Collection<R> foo(Collection<T> c);
现在,我想迫使我的方法返回相同类型的参数的集合,所以就没有必要把返回对特定收藏的价值。类似这样的:
public <R, T, S extends Collection> S<R> foo(S<T> c);
可悲的是,这不能编译。
这可以以某种方式完成吗?什么是正确的方法来做到这一点?
你不能参数化类型参数标记。你可能想要:'...,S扩展集合'然后'(S c)'。 –
R与T有什么关系? – Powerlord
@Powerlord,我想申请一个类型T-> R的映射器。 T和R之间没有关系。 –