Java中==与equals()有何本质不同?
- 内容介绍
- 文章标签
- 相关推荐
本文共计647个文字,预计阅读时间需要3分钟。
=和 equals 的区别:首先,我们应该知道的是:- = 是运算符,用于比较两个值是否相等。- equals 是 Object 类的方法,用于比较两个对象的引用是否相同或内容是否相同。
具体来说:- = 是运算符,如果比较的是基本数据类型(如 int、double 等),则比较存储的值是否相同;如果比较的是引用数据类型(如对象),则比较两个变量的引用是否指向同一对象。- equals 是 Object 类的方法,默认情况下,它比较的是两个对象的引用是否相同。但如果类重写了 equals 方法,它就可以比较对象的内容是否相同。
总结:- = 是运算符,用于基本数据类型的值比较或引用数据类型的地址比较。- equals 是方法,用于比较对象的引用或内容,具体取决于类的实现。
“==”和equals的区别
首先我们应该知道的是:
- “==”是运算符,如果是基本数据类型,则比较存储的值;如果是引用数据类型,则比较所指向对象的地址值。
- equals是Object的方法,比较的是所指向的对象的地址值,一般情况下,重写之后比较的是对象的值。
一、对象类型不同
1、equals():是超类Object中的方法。
2、==:是操作符。
二、比较的对象不同
1、equals():用来检测两个对象是否相等,即两个对象的内容是否相等。
2、==:用于比较引用和比较基本数据类型时具有不同的功能,具体如下:
(1)、基础数据类型:比较的是他们的值是否相等,比如两个int类型的变量,比较的是变量的值是否一样。
(2)、引用数据类型:比较的是引用的地址是否相同,比如说新建了两个User对象,比较的是两个User的地址是否一样。
三、运行速度不同
1、equals():没有==运行速度快。
2、==:运行速度比equals()快,因为==只是比较引用。
本文共计647个文字,预计阅读时间需要3分钟。
=和 equals 的区别:首先,我们应该知道的是:- = 是运算符,用于比较两个值是否相等。- equals 是 Object 类的方法,用于比较两个对象的引用是否相同或内容是否相同。
具体来说:- = 是运算符,如果比较的是基本数据类型(如 int、double 等),则比较存储的值是否相同;如果比较的是引用数据类型(如对象),则比较两个变量的引用是否指向同一对象。- equals 是 Object 类的方法,默认情况下,它比较的是两个对象的引用是否相同。但如果类重写了 equals 方法,它就可以比较对象的内容是否相同。
总结:- = 是运算符,用于基本数据类型的值比较或引用数据类型的地址比较。- equals 是方法,用于比较对象的引用或内容,具体取决于类的实现。
“==”和equals的区别
首先我们应该知道的是:
- “==”是运算符,如果是基本数据类型,则比较存储的值;如果是引用数据类型,则比较所指向对象的地址值。
- equals是Object的方法,比较的是所指向的对象的地址值,一般情况下,重写之后比较的是对象的值。
一、对象类型不同
1、equals():是超类Object中的方法。
2、==:是操作符。
二、比较的对象不同
1、equals():用来检测两个对象是否相等,即两个对象的内容是否相等。
2、==:用于比较引用和比较基本数据类型时具有不同的功能,具体如下:
(1)、基础数据类型:比较的是他们的值是否相等,比如两个int类型的变量,比较的是变量的值是否一样。
(2)、引用数据类型:比较的是引用的地址是否相同,比如说新建了两个User对象,比较的是两个User的地址是否一样。
三、运行速度不同
1、equals():没有==运行速度快。
2、==:运行速度比equals()快,因为==只是比较引用。

