为什么我的等式比较使用=(单个等于)在Java中无法正常工作?

时间:2016-09-08 07:50:29

标签: java methods return syntax-error

我在以下行中有语法错误。但是我无法理解这个错误的原因是什么。

if (address1.compareTo(address2) = 1)
        System.out.println(address1 + " is greater than " + address2);

当且仅当compareTo返回1时,我想要实现的是打印正确的消息。

1 个答案:

答案 0 :(得分:4)

您应该比较(==)而不是分配(=)。这可能非常危险!为了避免这种情况,您可以使用Yoda notation,而不是比较

address1.compareTo(address2) == 1

您可以比较:

1 == address1.compareTo(address2)

如果遗漏=,则会出现比较错误。

在您的情况下,最好比较一下:

address1.compareTo(address2) > 0

enter image description here