从Java对象创建流的最简单方法是什么?

Che*_*rry 24 java java-8 java-stream

随着Collection一切都清楚了,但是怎么样以下几点:

object一种count()方法和getPart(int i)方法.因此,提取所有对象会产生以下样板代码:

List<Part> result = new ArrayList<Part>();
for (int i = 0, i < object.count(), i++) {
    result.add(object.getPart(i));        
}
return result.stream(); 
Run Code Online (Sandbox Code Playgroud)

是否有任何标准的方法来传递2个生产者:() -> object.count()(int i) -> object.getPart(i)创建一个流?像这样:

SomeUtil.stream(object::count, object::getPart);
Run Code Online (Sandbox Code Playgroud)

MBe*_*Bec 41

试试这个:

IntStream.range(0, object.count()).mapToObj(object::getPart);
Run Code Online (Sandbox Code Playgroud)

  • 我忘记了"我如何从这个奇怪的东西创建一个流"的解决方案的次数 - -problem是一个`IntStream`解决方案!:d (4认同)