繁体   English   中英

检查数组中的空值是否有意义/有用?

[英]Is checking for null value in the array is meaningful/useful?

假设我们有一个数组,并且有一个if语句,用于检查array [i]的内容是否相同。 例如,我们有一个Person []数组= new Person [10]; 我们将在名称为“ Tom”的数组中返回Person。

然后,我们将进行for循环并检查数组中的每个元素或插槽。

if(Person[i].getName().equals("Tom"))或==“ Tom”。 我们是否需要if语句来检查Person [i]!= null? 有没有意义,会限制空指针异常的数量吗?

为什么不只是使用:

if(Person[i] != null && Person[i].getName("Tom"))

有没有意义,会限制空指针异常的数量吗?

当然,如果Person[i]为空,它将限制空指针异常的数量。

我认为最好以数组中没有空元素的方式设计代码。 无论如何,在Java 8中,您可以执行以下操作:

Person[] persons = ...
List<Person> result = Arrays.stream(persons)
                            .filter(Objects::nonNull)
                            .filter(p -> "Tom".equals(p.getName()))
                            .collect(Collectors.toList());

结果列表包含名称为“ Tom”的所有人员。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM