Schauen wir uns zuerst das Beispiel an:
Die Codekopie lautet wie folgt:
Paket com.amos;
/**
* @ClassName: EqualTest
* @Description: Vergleich von gleichen und == in Java
* @Author: Amosli
*/
öffentliche Klasse EqualTest {
public static void main (String [] args) {
int a = 1;
float b = 1,0f;
System.out.println (a == b); // true
String c = neuer String ("Hi_amos");
String d = neuer String ("Hi_amos");
System.out.println (c == d); // false
System.out.println (C.Equals (d)); // true
}
}
Es gibt zwei Hauptmethoden, um zu beurteilen, ob zwei Variablen in Java gleich sind: Der eine besteht darin, den Operator == zu verwenden, und der andere besteht darin, die Equals -Methode zu verwenden, um festzustellen, ob die beiden gleich sind.
1). Zwei Variablen sind gleich, wahr werden zurückgegeben.
2).
Wie oben erwähnt, bestimmt, wenn dieselbe neue Zeichenfolge erläutert wird, == bestimmt, ob dieselbe false zurückgibt, während Gärme true zurückgibt.
Die String -Klasse, die von der Equals -Methode abzielt, überprüfen Sie den Quellcode und Sie können feststellen, dass Equals nur als Sonderfall von == angesehen werden kann.
Die Codekopie lautet wie folgt:
public boolean gleich (Object Anobject) {
if (this == Anobject) {
zurückkehren;
}
if (anObject Instance von String) {
String AnotherString = (String) AnObject;
int n = value.length;
if (n == Anotherstring.Value.length) {
char v1 [] = Wert;
char v2 [] = anotherstring.Value;
int i = 0;
while (n--! = 0) {
if (v1 [i]! = v2 [i])
false zurückgeben;
i ++;
}
zurückkehren;
}
}
false zurückgeben;
}
Die Equals -Methode ruft die == Diskriminanzformel von Anfang an auf und bestimmt dann, ob der weitere Wert korrekt ist.