Passare dichiarazioni in Java

Una dichiarazione switch è utile quando è necessario selezionare una delle varie alternative in base al valore di un numero intero, un carattere o una variabile String. La forma di base dell'istruzione switch è questo:

switch (espressione)
{
cassa costante:
dichiarazioni;
break;
[Caso costante-2:
dichiarazioni;
break; ] ...
[Default:
dichiarazioni;
break; ] ...
}

L'espressione deve restituire un int, short, byte, o char. Esso non può € t essere un lungo o un tipo in virgola mobile.

Ogni raggruppamento di righe di codice che inizia con la parola chiave case e termina con un'istruzione break è un gruppo di casi. È possibile codificare il numero di gruppi di casi, come si desidera o necessità. Ogni gruppo inizia con la parola caso, seguita da una costante (di solito, un numerico, carattere o stringa) e due punti.

Poi si codifica una o più istruzioni che si desidera eseguito se il valore dell'espressione interruttore è uguale alla costante. L'ultima riga di ogni gruppo caso è un'istruzione break, che causa l'intera istruzione switch alla fine.

Il gruppo di default, che è opzionale, è come un catch-all Gruppo Case. Le sue dichiarazioni sono eseguiti solo se nessuna delle costanti casi precedenti corrisponde all'espressione switch.

I gruppi di casi non sono veri blocchi contrassegnati con bretelle. Invece, ogni gruppo caso inizia con la parola chiave case e termina la parola caso che inizia il gruppo prossimo caso. Tutti i gruppi di casi insieme, tuttavia, sono definiti come un blocco contrassegnato con un insieme di graffe.

L'ultima dichiarazione in ciascun gruppo di casi di solito è un'istruzione break. A cause istruzione break controllo per saltare alla fine dell'istruzione switch. Se si omette l'istruzione break, il controllo cade attraverso il gruppo prossimo caso. Accidentalmente tralasciando dichiarazioni Break è la causa più comune di problemi con l'utilizzo di uno switch.

Hereâ € s un esempio di un'istruzione switch che assegna un valore a una variabile denominata commissionRate in base al valore di una variabile intera denominati salesClass:

doppio commissionRate;
interruttore (salesClass)
{
Caso 1:
commissionRate = 0,02;
break;
Caso 2:
commissionRate = 0.035;
break;
Caso 3:
commissionRate = 0.05;
break;
predefinito:
commissionRate = 0.0;
break;
}

L'istruzione switch può anche valutare i dati char. Nel seguente esempio, una variabile char denominata salesCategory viene valutata per assegnare tassi di commissione. Le possibili categorie di vendita sono A, B, o C. Tuttavia, i codici di categoria può essere maiuscolo o minuscolo:

doppio commissionRate;
interruttore (salesCategory)
{Case 'A':
caso 'a':
commissionRate = 0,02;
break;
'B' caso:
caso 'b':
commissionRate = 0.035;
break;
caso 'C':
caso 'c':
commissionRate = 0.05;
break;
predefinito:
commissionRate = 0.0;
break;
}

La chiave per comprendere questo esempio è rendersi conto che si dona € t deve codificare qualsiasi dichiarazione a tutti per un gruppo di casi, e che se si omette l'istruzione break da un gruppo di casi, di controllo cade attraverso il gruppo prossimo caso. Così, il caso 'A' gruppo doesnâ € t contengono le dichiarazioni, ma si risolve con il caso 'a' gruppo.

Cominciando con Java 7, è possibile utilizzare anche i valori delle stringhe in un'istruzione switch. Per esempio:

doppio commissionRate;
interruttore (salesCategoryName)
{
caso "Categoria A":
commissionRate = 0,02;
break;
caso "Categoria B":
commissionRate = 0.035;
break;
caso "categoria C":
commissionRate = 0.05;
break;
predefinito:
commissionRate = 0.0;
break;
}