我有方法,返回java.util.Collection
我想使用Iterables.find
我该怎么做?
答案 0 :(得分:1)
我有
Collections2<Integer>
我敢打赌你没有。你不能实例化Collections2
(除了反射),即使你做了,它也没有参数化。
因此我想将其转换为
Iterables<Integer>
假设您的意思是Iterable<Integer>
,此行应该执行:
Iterable<Integer> = yourIntegerList;
如果您想将Iterables
与List
一起使用,请执行以下操作:
Iterables.contains(yourIntegerList, 2)
但是List
的简单方法是:只做yourIntegerList.contains(2)
。
没有任何变化,每个Collection
也是Iterable
。
就这么做。如果您收到错误,请将其显示给我们。否则,我们唯一知道的是,您目前很困惑w.r.t.层次结构。
答案 1 :(得分:0)
我有方法,返回
Collection
查看Collection
的JavaDoc,您将看到它具有Iterable
的SuperInterface。由于这是Iterables.find()
的第一个参数所需要的,因此您拥有所需的一切。创建一个Function
来查找,您已经拥有了所需的一切。