Når du skriver Java-programmer er det uunngåelig ganger når du har å forholde seg inngangen du har lite informasjon om. Hvis du har innspill gått inn i programmet , eller i en metode innen det , og du må sørge for at det er et nummer du kan bruke metoder for de numeriske wrapper klassene . Disse klassene gir metoder for analyse strenger som nummer typer som kaster unntak dersom passert inngangen er ikke numerisk . Ved å bruke disse metodene i forbindelse med prøve og fange blokker du kan arbeide ut hva slags inngangsverdi du arbeider med . Instruksjoner
en
Skaff en referanse til inngangsverdien du vil kontrollere. Avhengig av programmet kan du allerede ha innspill lagres som en variabel. Følgende eksempelkode lager et utvalg streng variabel å demonstrere teknikken : String innspill = " 9 ";
Denne variabelen lagrer nummer ni som en streng . Metodene for parsing nummertypene ta streng parametere så hvis dine innspill ikke er lagret som en streng lage en streng for å inkludere det som i følgende eksempel: int myNumber = 6; String inngang = "" + myNumber ;
2
Lag en prøve kode blokk på din for parsing prosessen . Skriv inn følgende omrisset av en prøve block: try { //parse her }
Inne i denne blokken du kan plassere koden for å analysere dine innspill . Hvis du programmerer i en Integrated Development Environment du må ta en prøve blokk eller antall parsing prosessen vil hindre programmet fra kompilering. Try -blokken er en måte å sikre din søknad mot tallformat.Følgende unntak.
3
Legg til en catch-blokken i koden . Hvis koden inni try -blokk gjør kaste en rekke format unntak, vil behandlingen hoppe umiddelbart til catch-blokken . Legg det etter ditt forsøk blokk stenger som følger: catch ( NumberFormatException NFE ) { System.out.println ( " Ikke et tall: " + nfe.getMessage ( )); }
p Hvis inngangen er ikke en rekke innholdet i denne blokken vil utføre . For øyeblikket inneholder det en enkel utgang uttalelse til konsollen , men du kan legge til din egen behandling inne i blokken .
4
Forsøk på å analysere dine innspill som et tall. Nummertastene wrapper klasser lar deg analysere strenger som ulike numeriske typer inkludert heltall, dobbel presisjon , korte , lange og flyttall . Velge hvilken klasse passer din og skriv den inne i try -blokken. Følgende eksempelkode demonstrerer teknikken for heltall : int inputNum = Integer.parseInt ( input); System.out.println ( " Er et tall: " + inputNum ) ;
p Hvis input er et tall den andre linjen vil kjøre, og koden vil ignorere catch-blokken . Hvis inngangen er ikke et tall på linje etter parse forsøk ikke vil kjøre som behandling vil umiddelbart gå til catch-blokken .
5
Lagre Java-filer , kompilere og kjøre programmet . Test det ved å endre verdien av den opprinnelige innspill variabel som i følgende eksempel kode : String inngang = " p ";
p Dette vil føre til at programmet til å kaste et unntak og innholdet av catch-blokken vil utføre . Innenfor prøve blokken inn koden du ønsker å kjøre når input er et tall. Innenfor catch-blokken inn koden du ønsker å kjøre hvis det ikke er.