Differenza tra & e && in Java
Un operatore in Java è un simbolo che può eseguire alcune operazioni desiderate su un insieme di valori. Java ha diversi tipi di operatori come logico, aritmetico, bit per bit e altro.
In questo tutorial, cercheremo di studiare e comprendere la differenza tra l’operatore &
e &&
in Java.
L’operatore &
è un operatore bit a bit. Gli operatori bit a bit sono fondamentalmente utilizzati per lavorare e manipolare singoli bit dei numeri. Funziona su entrambi i lati dell’operatore. L’operatore &
bit per bit è un operatore binario che esegue l’operazione AND bit per bit sui suoi operandi.
Il codice seguente mostra l’uso dell’operatore &
.
public class operators {
public static void main(String[] args) {
int a = 5;
int b = 7;
System.out.println("a&b = " + (a & b)); // 0101 & 0111=0101 = 5
}
}
Produzione:
a&b = 5
Il &&
è l’operatore logico AND
che lavora con gli operandi booleani. Come suggerisce il nome, gli operatori logici possono eseguire l’operazione logica e combinare due o più condizioni. Questi possono essere utilizzati con qualsiasi forma di tipo di dati.
L’operatore logico &&
restituisce vero quando entrambe le condizioni sono vere. Valuta gli operandi da sinistra a destra. Converte ogni operando in un valore booleano e restituisce il valore originale dopo l’operazione.
Il codice seguente mostra l’operatore &&.
import java.io.*;
class Logical_Operator {
public static void main(String[] args) {
int a = 10, b = 20, c = 20 System.out.println("Var1 = " + a);
System.out.println("Var2 = " + b);
System.out.println("Var3 = " + c);
if ((a < b) && (b == c)) {
System.out.println("True Conditions");
} else
System.out.println("False conditions");
}
}
Produzione:
A = 10
B = 20
C = 20
True Conditions
Nell’esempio sopra, entrambe le condizioni sono vere. Ecco perché viene stampato True Conditions
. Anche se uno di essi fosse falso, sarebbero state pubblicate False Conditions
.