Confronta due numeri interi in Java
-
Confronta due valori interi utilizzando l’operatore
==
in Java -
Confronta due riferimenti interi utilizzando il metodo
equals()
in Java -
Confronta due numeri interi usando il metodo
equals()
in Java -
Non confrontare due riferimenti interi usando l’operatore
==
in Java
Questo tutorial introduce come confrontare due numeri interi in Java.
Per confrontare i valori interi in Java, possiamo usare il metodo equals()
o ==
(operatore di uguale). Entrambi sono usati per confrontare due valori, ma l’operatore ==
controlla l’uguaglianza di riferimento di due oggetti interi, mentre il metodo equal()
controlla solo i valori interi (primitivo e non primitivo).
Quindi, mentre si confrontano i valori interi, spetta agli sviluppatori scegliere tra i metodi di confronto. Vediamo alcuni esempi.
Confronta due valori interi utilizzando l’operatore ==
in Java
In questo esempio, prendiamo due interi primitivi e quindi, utilizzando l’operatore ==
, confrontiamo entrambi i valori. Testiamo questo esempio utilizzando Java 15. Vedere l’esempio di seguito.
public class SimpleTesting {
public static void main(String[] args) {
int a = 18;
int b = 18;
if (a == b) {
System.out.println("Both are equal");
} else
System.out.println("Not equal");
}
}
Produzione:
Both are equal
Confronta due riferimenti interi utilizzando il metodo equals()
in Java
Possiamo usare il metodo equals()
per confrontare due numeri interi in Java. Restituisce vero se entrambi gli oggetti sono uguali; in caso contrario, restituisce false. Vedi l’esempio sotto.
public class SimpleTesting {
public static void main(String[] args) {
Integer a = new Integer(18);
Integer b = new Integer(18);
if (a.equals(b)) {
System.out.println("Both are equal");
} else
System.out.println("Not equal");
}
}
Produzione:
Both are equal
Confronta due numeri interi usando il metodo equals()
in Java
Qui stiamo confrontando due riferimenti interi utilizzando il metodo equals()
.
public class SimpleTesting {
public static void main(String[] args) {
Integer a = 10;
Integer b = 10;
if (a.equals(b)) {
System.out.println("Both are equal");
} else
System.out.println("Not equal");
}
}
Produzione:
Both are equal
Non confrontare due riferimenti interi usando l’operatore ==
in Java
Non dovremmo usare l’operatore ==
per confrontare due valori interi perché controlla l’uguaglianza del riferimento.
Java memorizza nella cache il valore Integer
nell’intervallo da -128 a 127. Pertanto, quando due oggetti interi hanno lo stesso valore in questo intervallo, il comparatore ==
restituirà true
perché si riferiscono allo stesso oggetto. Ma restituirà false
per qualsiasi valore al di fuori di questo intervallo.
public class SimpleTesting {
public static void main(String[] args) {
Integer a = 18;
Integer b = 18;
if (a == b) {
System.out.println("Both are equal");
} else
System.out.println("Not equal");
}
}
Produzione:
Both are equal
public class SimpleTesting {
public static void main(String[] args) {
Integer a = 150;
Integer b = 150;
if (a == b) {
System.out.println("Both are equal");
} else
System.out.println("Not equal");
}
}
Produzione:
Not equal
Come puoi vedere sopra, non dovremmo usare ==
per confrontare due valori Integer
.