搜索
首页JavaJava入门java中“==”操作符和equals方法有什么区别

java中“==”操作符和equals方法有什么区别

区别如下:

(推荐学习:java入门程序

==操作符专门用来比较两个变量的值是否相同,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等只能用==操作符。

equals方法用来比较两个独立对象的内容是否相同,就好比去比较两本书是否相同,它比较的两个对象是独立的。

示例:

String a = new String("AA");
String b = new String("AA");
System.out.println(a==b);
System.out.println(a.equals(b));

两条new语句创建了两个对象,然后用a,b两个变量分别指向其中的一个对象,这是两个不同的对象,ta们的首地址是不同的,即a,b中存储的数值是不同的,所以表达式a==b将返回false,而两个对象中的内容是相同的,所以a,equals(b)返回了true。

(视频教程推荐:java视频教程

注意:字符串的比较基本上都是使用equals方法。

如果一个类没有自己定义的equals方法,那么它将继承Object类的equals方法,Object类的的实现代码如下:

boolean equals(Object o)
{
return this==o;
}

这说明如果一个类没有自己定义的equals方法,ta默认的equals方法,等同于使用==操作符,也就是比较两个变量指向的对象是同一个对象。这时候使用equals和==。

会得到相同的结果!!如果希望写的类能够比较两个实例对象的内容是否相同,则需要覆盖equals方法!

以上是java中“==”操作符和equals方法有什么区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:csdn。如有侵权,请联系admin@php.cn删除

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用