我只想知道您对将所有 Collections 函数输出更改为 Iterable 类型的意见。
在我看来,这可能是当今 Java 中最常见的代码,每个人在 99% 的时间里总是返回一个 List/Set/Map,但不应该是返回类似的标准
public final Iterable<String> myMethod() {
return new Iterable<String>() {
@Override
public Iterator<String> iterator() {return myVar.getColl();}
};
}
这很糟糕吗?你知道所有的 DAO 类,这些东西就像
Iterable<String> getName(){}
Iterable<Integer> getNums(){}
Iterable<String> getStuff(){}
代替
List<String> getName(){}
List<Integer> getNums(){}
Set<String> getStuff(){}
毕竟,99% 的时间你会在 for 循环中使用它……
你怎么看?