Questo metodo dovrebbe leggere un char da tastiera e controllare se questo char è ammissibile, cioè se è uguale a uno di certi altri char ricevute dal metodo come array di char. Il problema che mi ritrovo è che se l'utente non inserisce un solo carattere ma una stringa che però ha come lettera iniziale un carattere ammissibile, il metodo me lo accetta comunque. Come fare a risolvere questo problema?codice:public static char leggiSceltaChar (String messaggio, char...ammissibile) { boolean finito=false; char valoreLetto = '\0'; do{ valoreLetto = leggiChar(messaggio); for(int i=0;i<ammissibile.length;i++){ char carattere=ammissibile[i]; if (valoreLetto==carattere|| valoreLetto==Character.toUpperCase(carattere)) finito=true; } if(finito==false) System.out.printf(MESSAGGIO_AMMISSIBILI); } while (!finito); return valoreLetto; }
Quando io al posto di un solo carattere inserisco una parola, questa Java come me la considera? come un unico char o come un array di char? Se lo considerasse come array potrei mettere la condizione che la sua dimensione sia 1...ma quali metodi potrei usare?Gli stessi degli array?

Rispondi quotando