Java 8 Lambda on Primitive Boolean

Kla*_*aus 3 lambda java-8

如何使以下示例有效?

Boolean persistence =  Arrays.asList(new boolean[]{true, false})
                             .stream()
                             .filter(b -> b)
                             .findFirst().orElse(false); 
Run Code Online (Sandbox Code Playgroud)

当我更换它工作得很好booleanBoolean.

Ous*_* D. 5

你不能创建一个Stream原始的布尔值,这是你想要的最有效的方法.

boolean[] myArray = new boolean[]{ true, false };
boolean result = IntStream.range(0, myArray.length)
                          .anyMatch(index -> myArray[index]);
Run Code Online (Sandbox Code Playgroud)

或者你可以anyMatch用你的方法取而代之filter- findFirst如果你愿意的话.