最近有人要求我在一行代码中检查数组是否为空。
我的想法是使用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/