5 Unterschied zwischen == Operator und equals() Methode in Java

Contents

equals()-Methode in Java

Die Methode equals()  ist ein öffentliches Mitglied der Klasse java.lang.Object. Da alle Klassen in Java standardmäßig die Objektklasse erweitern, ist diese Methode in allen Klassen verfügbar, die Sie in Java erstellen. Die Standardversion der equals()-Methode macht dasselbe wie der „==“-Operator, dh sie vergleicht die beiden Objekte basierend auf ihrer Position im Speicher. Es wird jedoch immer empfohlen, die Methode equals () zu überschreiben, damit sie den Vergleich zweier Objekte basierend auf ihrem Inhalt oder basierend auf einer beliebigen Geschäftslogik durchführt. Das heißt, wenn zwei Objekte die Geschäftslogik erfüllen, sollte der Aufruf der Methode equals für diese Objekte unabhängig von ihrem Speicherort true zurückgeben.

== Operator in Java

Der Operator „==“  ist ein binärer Operator in Java, der die beiden Objekte basierend auf ihrer Position im Speicher vergleicht. Das heißt, wenn zwei Referenzvariablen auf dasselbe Objekt im Speicher zeigen, wird die Anwendung des  Operators „==“  auf diese Referenzvariablen „true“ zurückgeben. Sie können den  Operator „==“  sowohl auf primitive Typen als auch auf abgeleitete Typen anwenden. Es ist jedoch am besten für primitive Typen geeignet.

Lesen Sie auch: Unterschied zwischen Abstract und Interface in Java

== operator vs equals () Methode

Gleichheitsoperator (==).quals() Methode
Es kann verwendet werden, um sowohl primitive Werte als auch Objekte zu vergleichen.Es kann nur zum Vergleichen von Objekten verwendet werden. Es kann nicht für primitive Werte verwendet werden.
Es vergleicht Primitive basierend auf ihren Werten und Objekte basierend auf ihrer Referenz.Es vergleicht Objekte entweder mit ihrer Referenz oder mit ihrem Zustand, es hängt von der Implementierung der Methode equals() ab.
Der Gleichheitsoperator (==) kann keine inkompatiblen Objekte vergleichen, der Compiler gibt den Kompilierzeitfehler aus.Die Methode equals() kann inkompatible Objekte vergleichen und gibt in diesem Fall immer „false“ zurück.
Es ist ein Operator und kann nicht überschrieben werden.Es ist eine Methode und kann überschrieben werden.

Was Sie über den Operator == und die Methode equals () wissen müssen

  1. Der Operator == ist ein binärer Operator in Java, während equals () eine öffentliche Methode der Klasse java.lang.Object ist.
  2. Der Gleichheitsoperator kann zum Vergleichen von Primitiven und Objekten verwendet werden. Equals-Methode kann nur mit Objekten verwendet werden.
  3. Der Gleichheitsoperator vergleicht die Objektreferenzen, wenn zwei Objekte mit dem Gleichheitsoperator verglichen werden. Equals-Methode kann beim Überschreiben den Inhaltsvergleich von zwei Objekten durchführen.
  4. Sie können den Operator „==“ nicht überschreiben. Sie verhält sich für alle Objekte gleich. Sie können die Methode equals gemäß Ihren Geschäftsanforderungen überschreiben.
  5. == Der Operator is eignet sich am besten für primitive Typen, während die Methode equals () am besten für abgeleitete Typen geeignet ist.

osky