最近有人要求我在一行代码中检查数组是否为空。

我的想法是使用array.length==0。但是如果数组是这样初始化的,

int[] array = new int[5];


这将具有大小为5的数组,并且在每个索引中均具有“ 0”。

您能帮我找到一个行代码以检查它是否为空吗?

最佳答案

如果要检查数组是否包含任何非零元素,则可以将流用于一行决策:

Arrays.stream(array).anyMatch(x -> x != 0);


但是它会产生NullPointerException,如果您想避免它,可以使用Optional

Arrays.stream(Optional.ofNullable(array).orElse(new int[0])).anyMatch(x -> x != 0))

关于java - 检查数组是否在一行中为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36350005/

10-11 22:28
查看更多