什么时候在Java中使用引用相等与对象相等是合适的?

When is it appropriate to use reference equality vs object equality in Java?(什么时候在Java中使用引用相等与对象相等是合适的?)

本文介绍了什么时候在Java中使用引用相等与对象相等是合适的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我了解这两个术语之间的区别,以及如果您想要检查两个对象是否具有引用或相同的值,您将使用什么方法。我的问题是,与检查两个对象是否具有相同的内容或值(从来没有一次我必须检查两个对象是否具有相同的引用)相比,何时必须检查两个对象是否具有相同的引用?

推荐答案

这并不是真正的"代替"相等性检查,但出于性能和空安全原因,您可以在执行相等性检查之前执行引用检查。

实际上,这就是调用Objects.equals(a,b)而不是a.equals(b)时发生的事情。

public static boolean equals(Object a, Object b) {
     return (a == b) || (a != null && a.equals(b));
}

这篇关于什么时候在Java中使用引用相等与对象相等是合适的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:什么时候在Java中使用引用相等与对象相等是合适的?

基础教程推荐