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