equals与==的区别

 一、对象类型不同

1、equals():是超类Object中的方法。

2、==:是操作符。

二、比较的对象不同

1.equals

equals默认比较地址值

如果类中重写了equals方法,比较内容是否相等。

String、Date、File、包装类都重写了Object类的equals方法。

如果类中没有重写equals方法,比较地址值是否相等(是否指向同一个地址值)。

2.==

比较运算符,返回的就是一个布尔值true,false

如果比较的是基本数据类型变量,比较两个变量的值是否相等。(不一定数据类型相同)

如果比较的是引用数据类型变量,比较两个对象的地址值是否相同,即两个引用是否指向同一个地址值

三、运行速度不同

1、equals():没有==运行速度快。

2、==:运行速度比equals()快,因为==只是比较引用。

帮到你的话,点个赞再走吧!

你可能感兴趣的:(后端技术分享,java)