Salve ragazzi ho il seguente esercizio da svolgere:

Scrivere una classe, "CaseChange" che, tramite il metodo System.in.read()
legga l’input dell’utente e restituisca ogni lettera digitata da maiuscola a
minuscola e viceversa finché non si preme il tasto punto(.); al termine, far
stampare quante conversioni maiuscolo/minuscolo sono avvenute.
io l'ho svolto in un modo che funziona correttamente ed è il seguente
class CaseChange{
public static void main(String args[]) throws java.io.IOException {

char ch;
int i;
int j;
int counter = 0;

do {
System.out.println(" Inserisci lettera: ");
do{
ch = (char) System.in.read();

if (ch >=65 && ch <=90) {

i = ch + 32;
ch = (char) i;
System.out.println(ch);
counter++;
}
else if (ch >=97 && ch<=122) {

j = ch - 32;
ch = (char) j;
System.out.println(ch);
counter++;

}
}while(ch == '\n' | ch == '\r');
}while(ch != '.');
System.out.println( " Numero delle conversioni avvenute: " + counter);
}
}
lo stesso esercizio vorrei risolverlo con lo switch case togliedo cosi if ed else if.
l'ho svolto in questo modo:
class CaseChange1 {
public static void main(String args[]) throws java.io.IOException {

char ch;
int i;
int j;
int counter = 0;
do {
System.out.println(" Inserisci lettera: ");

do{
ch = (char) System.in.read();


swicth(ch) {
case(ch >=65 && ch <=90):
i = ch + 32;
ch = (char) i;
System.out.println(ch);
counter++;
break;

case(ch >=97 && ch<=122):
j = ch - 32;
ch = (char) j;
System.out.println(ch);
counter++;
break;

}
}while(ch == '\n' | ch == '\r');
}while(ch != '.');
System.out.println( " Numero delle conversioni avvenute: " + counter);
}
}
ora quando lo vado a compilare mi da alla riga 15 errore che si aspetta ";" prima della graffa e alla riga 16 mi dice orphaned case ma non capisco il motivo