==运算符(== operator)和java中的equals()方法(equals() method in java)的区别

equals()方法是java.lang.Object类的公共成员。由于默认情况下java中的所有类都扩展了对象类,所以此方法在您在java中创建的所有类中都可用。equals()方法的默认版本执行与“==”操作符相同的操作,即根据两个对象在内存中的位置比较它们。但是,始终建议重写equals()方法,以便它根据两个对象的内容或任何业务逻辑执行两个对象之间的比较。这意味着,如果两个对象满足业务逻辑...

java中的equals()方法

equals()方法是java.lang.Object类的公共成员。由于默认情况下java中的所有类都扩展了对象类,所以此方法在您在java中创建的所有类中都可用。equals()方法的默认版本执行与“==”操作符相同的操作,即根据两个对象在内存中的位置比较它们。但是,始终建议重写equals()方法,以便它根据两个对象的内容或任何业务逻辑执行两个对象之间的比较。这意味着,如果两个对象满足业务逻辑,那么对这些对象调用equals方法应该返回true,而不管它们在内存中的位置如何。

==java中的运算符

“==”运算符是java中的一个二进制运算符,它根据两个对象在内存中的位置对它们进行比较。这意味着,如果两个引用变量指向内存中的同一对象,则对这些引用变量应用“==”运算符将返回true。您可以将“==”运算符应用于基元类型和派生类型。但是,它最适合于原始类型。

Also Read: Difference Between Abstract And Interface In Java

==运算符(== operator) vs. equals()方法(equals () method)

Equal (==) operatorequals() method
它可用于比较基本值和对象。它只能用于比较对象。它不能用于基本值。
它基于基元的值比较基元,并基于它们的引用比较对象。它将对象与其引用或状态进行比较,这取决于equals()方法的实现。
相等(=)运算符无法比较不兼容的对象,编译器将抛出编译时错误。equals()方法可以比较不兼容的对象&在这种情况下,它总是返回“false”。
它是一个运算符,不能被覆盖。它是一个方法,可以被重写。

关于==运算符和equals()方法,您需要了解的是

  1. ==运算符是java中的二进制运算符,而equals()是java.lang.Object类的公共方法。
  2. 相等运算符可用于比较基元和对象。Equals方法只能用于对象。
  3. 当使用相等运算符比较两个对象时,相等运算符比较对象引用。重写Equals方法时,可以对两个对象进行内容比较。
  4. 您不能覆盖“==”运算符。它对所有对象的行为都相同。您可以根据业务需求重写equals方法。
  5. ==运算符最适合于基元类型,而equals()方法最适合于派生类型。
  • 发表于 2022-09-10 11:11
  • 阅读 ( 67 )
  • 分类:IT

你可能感兴趣的文章

变量(variables)和java中的数据字面值(data literals in java)的区别

关键区别——java中的变量与数据文本 计算机程序是执行一项任务的一组指令。编程时需要存储数据。因此,这些数据被存储在存储器中。这些保留的内存位置称为变量。变量应该有唯一的名称,因为它们应该易于识别以执行...

  • 发布于 2020-10-19 08:52
  • 阅读 ( 256 )

java异常:您处理的对吗?

编程中的异常表示程序执行过程中某个时刻的异常情况。当异常情况可以在其他地方更好地处理而不是在遇到异常情况的地方处理时,可以使用它。考虑以下示例: ...

  • 发布于 2021-03-13 09:11
  • 阅读 ( 255 )

如何正确处理java异常

...处理,因此如果您从Java开始,您可以随身携带这些技巧中的大部分。 ...

  • 发布于 2021-03-14 17:31
  • 阅读 ( 236 )

数组(array)和数组表(arraylist)的区别

...ayList的大小可以根据负载和容量动态增长。 它使用赋值运算符来存储元素。 它使用add()属性**元素。 它可以包含原语以及相同或不同数据类型的对象。 ArrayList中不允许使用原语。它只能包含对象类型。 数组和泛型不能...

  • 发布于 2021-06-25 03:21
  • 阅读 ( 650 )

应用(application)和小程序(applet)的区别

...户界面(GUI)运行。它是一个广义的术语,用于定义Java中的任何类型的程序,但仅限于安装在计算机上的程序。任何应用程序都可以访问系统上的任何数据、信息或任何可用资源,而不受任何安全限制。Java应用程序通过从命令...

  • 发布于 2021-06-25 03:53
  • 阅读 ( 203 )

建造师(constructor)和方法(method)的区别

...象实例时调用它。本文解释了两者的区别。 什么是java中的一种方法(a method in java)? 方法只不过是一组代码,这些代码按名称命名,可以在任何时候调用以执行某些特定任务并返回结果。如果方法无法返回值,则其返回类型必...

  • 发布于 2021-06-25 08:37
  • 阅读 ( 428 )

抽象类(abstract class)和java接口(interface in java)的区别

...以使用接口实现多重继承。 覆盖的关键领域 1.什么是Java中的抽象类-定义,功能2.什么是Java中的接口-定义,功能3.Java中抽象类和接口的区别是什么-主要区别的比较 关键术语 抽象类、接口、多重继承 什么是java中的抽象类(abstrac...

  • 发布于 2021-07-01 01:29
  • 阅读 ( 276 )

复制构造函数(copy constructor)和赋值运算符(assignment operator)的区别

复制构造函数和赋值运算符的主要区别在于,复制构造函数是一种有助于创建已存在对象的副本而不影响原始对象值的构造函数,而赋值运算符是一种有助于将新值赋给程序中变量的运算符。 构造函数是一种特殊的方法,在创...

  • 发布于 2021-07-01 05:44
  • 阅读 ( 531 )

C++(c++)和JAVA(java)的区别

...区别。 转到语句 此外,虽然C++有GOTO语句,但java没有。 运算符重载 运算符重载是C++和java之间的另一个区别。C++支持运算符重载,而java不支持运算符重载。 结构和工会 C++和java之间的另一个区别是C++支持结构和联合,而java则不...

  • 发布于 2021-07-01 07:51
  • 阅读 ( 332 )

字节流(byte stream)和java中的字符流(character stream in java)的区别

...法是使用字节流和字符流。 覆盖的关键领域 1.什么是Java中的字节流–定义,功能2.什么是Java中的字符流–定义,功能3.Java中字节流和字符流的区别是什么–关键区别的比较 关键术语 字节流、字符流、Java 什么是java中的字节流(...

  • 发布于 2021-07-01 09:22
  • 阅读 ( 706 )
nkheyc0345
nkheyc0345

0 篇文章

相关推荐