use*_*930 -2 java generics iterable
重写的方法想要返回,Iterable<T>但在我拥有的方法中Iterable<String>.我怎样才能返回Iterable<T>从Iterable<String>,甚至Set<String>?
码:
@Override
public Iterable<T> getAll() {
Set<String> set = getCache().keySet();
Iterable<String> iter = set;
return ?
}
Run Code Online (Sandbox Code Playgroud)
简单的答案 - 你不能.无法进行转换.
该声明Iterable<T> getAll()表示该方法应该返回一个Iterable传递实例,T其中where T表示实例化封闭泛型类型时使用的参数类型.
如果你的代码只能返回一个Iterable<String>那么当它只能满足通话网站的类型要求T是String.如果这是可以接受的,那么你也可以摆脱泛型类型参数T.
| 归档时间: |
|
| 查看次数: |
531 次 |
| 最近记录: |