Operatori unari

Gli operatori unari sono quegli operatori in Java che necessitano solo di un singolo operando per eseguire qualsiasi funzione. Lavorano sullo stesso principio delle operazioni unarie in matematica. Ad esempio, è possibile utilizzare operatori unari per rappresentare un valore positivo, un valore negativo, incrementare un valore di 1, decrementare un valore di 1 o negare un valore.
  • +x (valore positivo)
  • -x (valore negativo)
  • ++x (operazione di incremento)
  • --x (operazione di decremento)
  • !x (negazione)

Tipi di operatori unari

Esistono 5 tipi di operatori unari

1. Unario più

Rappresenta un valore positivo come +x = x o +5 = 5.

2. Meno unario

Rappresenta un valore negativo come -x = -x o -5 = -5.

3. Operatore unario incrementale

Incrementa il valore di 1 dove ++x = x+1.

4. Operatore unario di decremento

Decrementa il valore di 1 dove --x = x-1.

5. Complemento logico

Inverte logicamente il valore di un valore booleano come se x = vero, allora !x sarà falso.

Operatore di incremento (++)

L'operatore di incremento (++) (noto anche come operatore unario di incremento) in Java viene utilizzato per aumentare il valore di una variabile di 1. Poiché è un tipo di operatore unario, può essere utilizzato con un singolo operando.

Sintassi

La sintassi per l'operatore di incremento è una coppia di segni di addizione, ad es.
++ x; x++;
L'operatore può essere applicato prima o dopo la variabile. Entrambi avranno lo stesso incremento di 1. Tuttavia, entrambi hanno usi separati e possono essere classificati come i seguenti tipi.
  • Operatore di pre-incremento
  • Operatore post-incremento

Esempio


public class IncrementOperator {

	public static void main(String[] args) {

		int variable = 15;
		System.out.println("Original value of the variable = " + variable);
		
		// after using increment operator 
		variable++; 	 //  increments 1, variable = 16
		System.out.println("variable++ = " + variable); 

		++variable;		//  increments 1, variable = 17
		System.out.println("++variable = " + variable); 
	}
}

Produzione

Valore originale della variabile = 15 variabile++ = 16 ++variabile = 17

Operatore pre-incremento (++x;)

Se l'operatore di incremento (++) viene specificato prima della variabile come un prefisso (++x), viene chiamato operatore di pre-incremento. In questo caso, il valore della variabile viene prima incrementato di 1, quindi vengono eseguiti ulteriori calcoli.

Esempio


public class PreIncrementOperator {

	public static void main(String[] args) {

		int variable = 5;
		System.out.println("Original value of the variable = " + variable);
		
		// using pre-increment operator 
		int preIncrement = ++variable; 

		System.out.println("variable = " + variable); 
		System.out.println("preIncrement = " + preIncrement); 
		System.out.println("++preIncrement = " + ++preIncrement); 	
	}
}

Produzione

Valore originale della variabile = 5 variabile = 6 preIncrement = 6 ++preIncrement = 7

Operatore post-incremento (x++;)

Se l'operatore di incremento (++) è specificato dopo la variabile come un suffisso (x++), viene chiamato operatore di post-incremento. In questo caso, il valore originale della variabile (senza incremento) viene utilizzato per i calcoli e quindi viene incrementato di 1.

Esempio


public class PostIncrementOperator {

	public static void main(String[] args) {

		int variable = 100;
		System.out.println("Original value of the variable = " + variable);
		
		// using post-increment operator 
		int postIncrement = variable++; // postIncrement = 100, variable = 101

		System.out.println("postIncrement = " + postIncrement); 
		System.out.println("variable = " + variable + "\n"); 
		
            // postIncrement = 101
		System.out.println("postIncrement++ = " + postIncrement++);
            // postIncrement = 102
		System.out.println("postIncrement++ = " + postIncrement++); 
            // postIncrement = 103
		System.out.println("postIncrement++ = " + postIncrement++); 
		
		System.out.println("\npostIncrement = " + postIncrement); 
	}
}

Produzione

Variabile originale = 100 postIncrement = 100 variabile = 101 postIncrement++ = 100 postIncrement++ = 101 postIncrement++ = 102 postIncrement = 103

Operatore di decremento (--)

Il decremento come suggerisce il nome viene utilizzato per ridurre il valore di una variabile di 1. È anche uno dei tipi di operatore unario, quindi può essere utilizzato con un singolo operando.

Sintassi

La sintassi per l'operatore di decremento è una coppia di segni negativi, ad esempio;
--X; X--;
Proprio come l'operatore di incremento, anche l'operatore di decremento (--) può essere applicato prima e dopo la variabile. Entrambi si tradurranno nello stesso decremento di 1. Entrambi hanno usi distinti e possono essere divergenti negli ulteriori tipi.
  • Operatore pre-decremento
  • Operatore post-decremento

Operatore pre-decremento (--x;)

Se l'operatore di decremento (--) è menzionato prima della variabile come un prefisso (--x), viene chiamato operatore di pre-decremento. In questo caso, il valore della variabile viene prima decrementato di 1, quindi vengono eseguiti altri calcoli.

Esempio


public class PreDecrementOperator {

	public static void main(String[] args) {
	
		int variable = 11;
		System.out.println("Original value of the variable = " + variable);
		
		// using preDecrement operator 
		int preDecrement = --variable; 
            
            // variable = 10
		System.out.println("variable = " + variable); 
            // preDecrement = 10
		System.out.println("preDecrement = " + preDecrement); 
            // preDecrement = 9		
		System.out.println("--preDecrement = " + --preDecrement);  	}
}

Produzione

Valore originale della variabile = 11 variabile = 10 preDecrement = 10 --preDecrement = 9

Operatore post-decremento (x--;)

Se l'operatore di decremento (--) è menzionato dopo la variabile come una postfissa (x--), viene chiamato operatore di post-decremento. In questo caso, il valore originale della variabile (senza decremento) viene utilizzato per i calcoli e quindi viene decrementato di 1.

Esempio


public class PostDecrementOperator {

	public static void main(String[] args) {
	
		int variable = 75;
		System.out.println("Original value of the variable = " + variable);
		
		// using postDecrement operator 
            // postDecrement = 75, variable = 74
		int postDecrement = variable--; 
		System.out.println("postDecrement = " + postDecrement); 
		System.out.println("variable = " + variable + "\n"); 
		// postDecrement = 74
		System.out.println("postDecrement-- = " + postDecrement--); 
            // postDecrement = 73
		System.out.println("postDecrement-- = " + postDecrement--); 
            // postDecrement = 72
		System.out.println("postDecrement-- = " + postDecrement--);
		
		System.out.println("\npostDecrement = " + postDecrement); 
	}
}
Valore originale della variabile = 75 postDecrement = 75 variabile = 74 postDecrement-- = 75 postDecrement-- = 74 postDecrement-- = 73 postDecrement = 72

Conclusione

Alla fine di questo post, ci auguriamo che tu abbia acquisito familiarità con gli operatori unari di incremento e decremento in Java. Sei incoraggiato a praticare i casi limite e altri problemi pratici in CodeGym per essere sicuro delle tue capacità. Per rafforzare ciò che hai imparato, ti suggeriamo di guardare una lezione video dal nostro corso Java
Buona fortuna e buon apprendimento!