== 和 equals 的区别?

2022-01-01 150 0

在 Java 中,== 操作符和 equals() 方法用于比较两个对象:

==:用于比较两个对象的引用,即它们是否指向同一个对象实例。

如果两个变量引用同一个对象实例,== 返回 true,否则返回 false

对于基本数据类型(如 intdoublechar 等),== 比较的是值是否相等。

equals() 方法:用于比较两个对象的内容是否相等。默认情况下,equals() 方法的行为与 == 相同,即比较对象引用,如在超类 Object 中:

public boolean equals(Object obj) {
    return (this == obj);
}

然而,equals() 方法通常被各种类重写。例如,String 类重写了 equals() 方法,以便它可以比较两个字符串的字符内容是否完全一样。

相关文章

深拷贝和浅拷贝?
hashCode 与 equals?
final、finally、finalize 的区别?
final 关键字有什么作用?
17.成员变量与局部变量的区别有哪些?
18.静态变量和实例变量的区别?静态方法、实例方法呢?

发布评论