简单的方法来将Iterable更改为Collection

问题:

在我的应用程序中,我使用第三方库(Spring Data for MongoDb是准确的)。
该库的方法返回Iterable<T>,而我的其余代码期望Collection<T>
有什么实用方法可以让我快速将一个转换到另一个。我想避免在我的代码中做一个这样简单的事情的foreach循环。

回答:

使用Guava,您可以使用Lists.newArrayList(Iterable)Sets.newHashSet(Iterable),以及其他类似的方法。这当然将所有元素复制到内存中。如果这是不可接受的,我认为你的代码应该采用Iterable而不是Collection。番石榴也可以使用Iterable(例如Iterables.isEmpty(Iterable)Iterables.contains(Iterable, Object))在Collection上做一些方便的工作,但性能影响更为明显。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Easy way to change Iterable into Collection

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

2 + 5 =