gpt4 book ai didi

java - 正确评估字符串等值并处理空值

转载 作者:行者123 更新时间:2023-12-01 07:28:16 24 4
gpt4 key购买 nike

使用 equal 方法时,如果被比较的字符串为 null,则会导致错误:

public static void main(String[] args) {
String nullString = null;
String nullString2 = null;
System.out.println(nullString.equals(nullString2));
}

结果:线程“main”中的异常 java.lang.NullPointerException 在Main.main(Main.java:11)

这导致了我想做的事情出现问题,因为我需要评估字符串,并且使用 == 运算符经常导致等效字符串评估为 false。

在我的实际应用程序中,如果我有以下代码作为循环的一部分,这就是我得到的输出:

System.out.println(pointPerson == storyTasks.get(i).getPointPerson());
if (pointPerson != null) {
System.out.println(pointPerson.equals(storyTasks.get(i).getPointPerson()));
}

假真的错误的正确

那么我怎样才能防止程序崩溃,同时又正确地评估字符串。

我将在实际程序中将评估作为长 if 语句的一部分:

                        if (!name.equals(storyTasks.get(i).getName())
|| !desc.equals(storyTasks.get(i)
.getDescription())
|| !est.equals(storyTasks.get(i)
.getOriginalEstimate())
|| !taskStatus.equals(storyTasks.get(i)
.getStatus())
|| !pointPerson.equals(storyTasks.get(i)
.getPointPerson())) {
//code
}

最佳答案

您可以使用StringUtils.equals()来自 Apache Commons。

关于java - 正确评估字符串等值并处理空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20804998/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com