int testValue;
boolean success = false;
while(success == false) {
testValue = generateRandomInt();
success = mySystem.getHosts().parallelStream().allMatch(predicate(testValue));
}
return testValue;
我在玩java8流。您如何建议使上面的代码更美观/可读?
最佳答案
您可以使用无限的IntStream
而不是while
循环,并返回与您的条件相匹配的流的第一个int
:
return IntStream.generate (() -> generateRandomInt())
.filter (i -> mySystem.getHosts().parallelStream().allMatch(predicate(i)))
.findFirst()
.getAsInt();