例如,是否可以在芭乐中创建一个偶数范围?类似于:
Range.closed(0,10) //0,2,4,6,8,10我知道上面的代码行不会产生所需的输出,但类似这样的输出可能是:
Range.closed(0,10, SomeFunctionInterface<Integer>);哪里
interface SomeFunctionInterface<T>{
T computeNext(T first);
}有没有可能用芭乐呢?这仍然是一个连续的范围,只是对其应用了特定的规则。
我只对芭乐溶液感兴趣。
发布于 2013-04-22 22:16:30
如果您将两个操作组合在一起,则Guava可以支持这一点。首先,创建集合{0,1,2,3,4,5,6,7,8,9,10}。然后,对其进行过滤。
要将Range转换为中间的、未过滤的集合,请创建一个ContiguousSet。为此,您需要一个DiscreteDomain,它基本上就是您所描述的SomeFunctionInterface。因为您要处理整数,所以可以使用内置的DiscreteDomain.integers()。
要从那里得到仅包含偶数的集合,您可以编写一个Predicate,然后将它和中间集传递给Sets.filter。
https://stackoverflow.com/questions/16141618
复制相似问题