本地机器和服务器之间的行为差​​异

时间:2021-01-20 19:02:53

标签: java

我有以下课程:

public class FilterValues {
    private Boolean includeRecieved;
    private Boolean includeUnrecieved;

    //standard Getters and Setters for both Boolean fields...
}

在代码的其他地方,在另一个类中,使用以下方法比较两个字段以查看两者是否为真或均为假:

if (filterValue.getIncludeRecieved() == filterValue.getIncludeUnrecieved()) 

首先,请允许我解释一下,我意识到正确的方法是使用 .equals() 方法进行此比较。

我的问题是,当两个字段都设置为 true 时,上面的比较返回“true”并在我的本地工作时输入 if 语句。但是,当发布到我们的服务器时,相同的场景返回“false”并跳过 if 语句。该问题已通过将代码更改为:

if (filterValue.getIncludeRecieved().equals(filterValue.getIncludeUnrecieved()))

但是,我找不到任何解释为什么在不同环境中会出现行为差异的原因。我查看了文档,找不到任何会导致这种情况的内容。我需要了解原因,以确保此错误不会在其他地方发生,因为 QA 也无法在他们的本地机器上检测到它。

谁能解释一下是什么导致了两种环境之间 Java 行为的差异?

0 个答案:

没有答案