gpt4 book ai didi

java - 为什么 Object == null 有效?

转载 作者:行者123 更新时间:2023-12-01 06:37:38 25 4
gpt4 key购买 nike

因此,当我们比较对象时,我们使用 equals() 方法,或者在 if 语句中使用类似的方法。如果我们有以下代码

String a = "foo";
String b = "foo";
return a==b

我们会得到 false 返回给我们,因为 a 和 b 引用不同的对象。另一方面,

String a = null;
return a == null

我们会成真。这是为什么?

最佳答案

Why does Object == null work?

这实际上没有任何意义。 Java 中的对象不是值。你不能这样写。您只能编写 someObjectReference == null

So when we are comparing objects

我们不是。往上看。我们正在比较引用文献。

we use equals() methods, or something similar in an if statement for example. If we have the following code

String a = "foo";
String b = "foo";
return a==b

we would get false returned to us because a and b refer to different objects.

不,我们不会,他们也不会。它会返回 true。尝试一下。字符串文字由 Java 汇集。只有一个 "foo" 对象。

On the other hand,

String a = null;
return a == null

we would get true. Why is that?

因为引用a的值为空,==运算符右侧的表达式的值为空。相等值 => == 的结果是 true。请注意,a 是一个引用,而不是一个对象。

关于java - 为什么 Object == null 有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43532637/

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