Heim > Java > JavaErste Schritte > Hauptteil

Vergleichende Operationsanalyse von == und equal in Java

王林
Freigeben: 2020-11-17 15:11:33
nach vorne
2338 Leute haben es durchsucht

Vergleichende Operationsanalyse von == und equal in Java

Vergleichende Analyse:

(Lernvideo-Sharing: Java-Kurs)

==: Seine Funktion besteht darin, festzustellen, ob die Adressen zweier Objekte gleich sind. Das heißt: Bestimmen Sie, ob zwei Objekte dasselbe Objekt sind. (Grundlegende Datentypen vergleichen Werte und Referenzdatentypen == vergleichen Speicheradressen).

equals(): Seine Funktion besteht auch darin, zu bestimmen, ob zwei Objekte gleich sind. Im Allgemeinen gibt es jedoch zwei Anwendungsfälle:

Fall 1: Die Klasse deckt die Methode equal() nicht ab. Dann ist der Vergleich zweier Objekte dieser Klasse über equal() gleichbedeutend mit dem Vergleich der beiden Objekte über ==.

Fall 2: Die Klasse überschreibt die Methode equal(). Im Allgemeinen überschreiben wir die Methode equal(), um sicherzustellen, dass die Inhalte der beiden Objekte gleich sind. Wenn ihre Inhalte gleich sind, wird true zurückgegeben (d. h. die beiden Objekte werden als gleich betrachtet).

Codebeispiel:

public class test1 {
	public static void main(String[] args) {
		String a = new String("ab"); // a 为一个引用
		String b = new String("ab"); // b 为另一个引用,对象的内容一样
		String aa = "ab"; // 放在常量池中
		String bb = "ab"; // 从常量池中查找
		if (aa == bb) // true
		System.out.println("aa==bb");
		if (a == b) // false,非同一对象
		System.out.println("a==b");
		if (a.equals(b)) // true
		System.out.println("aEQb");
		if (42 == 42.0) // true
		System.out.println("true");
	}
}
Nach dem Login kopieren

Die Equals-Methode in String wurde überschrieben, da die Equals-Methode von Objekt die Speicheradresse des Objekts vergleicht, während die Equals-Methode von String den Wert des Objekts vergleicht. Beim Erstellen eines Objekts vom Typ String durchsucht die virtuelle Maschine den Konstantenpool, um festzustellen, ob ein vorhandenes Objekt mit demselben Wert wie das zu erstellende Objekt vorhanden ist, und weist es in diesem Fall der aktuellen Referenz zu. Wenn nicht, erstellen Sie ein String-Objekt im Konstantenpool neu.

Verwandte Empfehlungen: Erste Schritte mit Java

Das obige ist der detaillierte Inhalt vonVergleichende Operationsanalyse von == und equal in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!