gpt4 book ai didi

java - 来自 == 运算符的 "Invalid assignment"错误

转载 作者:搜寻专家 更新时间:2023-11-01 01:04:33 25 4
gpt4 key购买 nike

我试图写一个简单的方法:

boolean validate(MyObject o)
{
// propertyA && propertyB are not primitive types.
return o.getPropertyA() == null && o.getPropertyB() == null;
}

并且在 == null 部分出现了一个奇怪的错误:

Syntax error on token ==. Invalid assignment operator.

也许我的 Java 在使用了 PLSQL 一个赛季后生锈了。所以我尝试了一个更简单的例子:

Integer i = 4;
i == null;
// compile error: Syntax error on token ==. Invalid assignment operator.

Integer i2 = 4;
if (i == null); //No problem

这怎么可能?

我正在使用 jdk160_05。

澄清一下:我不是要分配任何东西,只是在两个 boolean 值之间执行 && 操作。我不想这样做:

if (o.propertyA() == null && o.propertyB() == null) { return true; }
else { return false; }

最佳答案

== 不是赋值运算符,它是 boolean 相等运算符,参见:

http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.21.2

如果要将 i 设置为空,请使用简单的赋值运算符 =:

i = null;

http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.26.1

如果要检查 i 是否为空,则需要使用 == 运算符

if (i == null)

关于java - 来自 == 运算符的 "Invalid assignment"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2739725/

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