Quando si scrivono programmi Java ci sono inevitabilmente momenti in cui si ha a che fare con l'ingresso si ha poche informazioni . Se si dispone di input inviato nel vostro programma o in un metodo all'interno di esso ed è necessario assicurarsi che si tratta di un numero è possibile utilizzare i metodi delle classi wrapper numeriche . Queste classi forniscono metodi per analizzare stringhe come tipi di numero che producono eccezioni se l'input passato non è numerico . Utilizzando questi metodi in combinazione con cercare di blocchi si può lavorare fuori che tipo di valore di ingresso si tratta di cattura. Istruzioni
1
acquisire un riferimento al valore di ingresso che si desidera controllare . A seconda del programma che si può già avere l'ingresso memorizzato come variabile . Il seguente codice di esempio crea una stringa campione variabile per dimostrare la tecnica : ingresso String = " 9" ;
Questa variabile memorizza il numero nove come una stringa. I metodi per l'analisi dei tipi di numero prendere i parametri di stringa , quindi se il vostro ingresso non è attualmente memorizzato come una stringa di creare una stringa per includerlo come nel seguente esempio : int myNumber = 6; Ingresso String = " " + myNumber ;
2
Creare un blocco di codice try per il processo di analisi numero . Immettere il seguente schema di un blocco try : try { //parse qui }
All'interno di questo blocco è possibile inserire il codice per analizzare il vostro input . Se si sta programmando in un ambiente di sviluppo integrato è necessario includere un blocco try o il processo di analisi numero impedisce al programma di compilazione . Il blocco try è un modo di salvaguardare la vostra applicazione contro eccezioni formato numerico .
3
Aggiungere un blocco catch per il codice. Se il codice all'interno del blocco try non genera un'eccezione di formato numerico , elaborazione salterà immediatamente al blocco catch . Aggiungere dopo il vostro blocco try si chiude come segue : catch ( NumberFormatException NFE ) { System.out.println (" Non è un numero : " + nfe.getMessage ( ) );}
Se l'ingresso non è un numero contenuto di questo blocco verrà eseguito. Al momento contiene una semplice dichiarazione di uscita per la console , ma è possibile aggiungere la tua elaborazione all'interno del blocco .
4
Tentativo di analizzare il vostro ingresso come un numero . Le classi wrapper numerici consentono di analizzare le stringhe come diversi tipi numerici interi compresi , doppia precisione , brevi , lunghi e numeri in virgola mobile . Scegliere quale classe adatta al vostro programma e inserire all'interno del blocco try . Il seguente codice di esempio illustra la tecnica per gli interi : int inputNum = Integer.parseInt ( input); System.out.println (" è un numero : " + inputNum ) ;
Se l'input è un numero la seconda linea viene eseguito e il codice ignora il blocco catch . Se l'ingresso non è un numero di riga dopo il tentativo parse non eseguirà l'elaborazione immediatamente passare al blocco catch .
5
Salva i tuoi file Java , compilare ed eseguire il programma . Provatelo , modificando il valore della variabile di ingresso originale , come nel seguente codice di esempio : ingresso String = " p " ;
Questo farà sì che il programma per generare un'eccezione e il contenuto del blocco catch viene eseguito . All'interno del blocco try inserire il codice che si desidera eseguire quando l'input è un numero. All'interno del blocco catch inserire il codice che si vuole eseguire , se non lo è.