Når du skriver Java-programmer er der uundgåeligt tidspunkter, hvor du er nødt til at beskæftige sig med input du har lidt information om. Hvis du har input gået ind i dit program eller i en metode inden for det, og du er nødt til at sørge for det er et tal , kan du bruge metoder de numeriske wrapper klasser. Disse klasser giver metoder til parsing strenge som nummer typer, som kaster undtagelser , hvis bestået indgangen ikke er numerisk . Ved at bruge disse metoder i forbindelse med prøve og fange blokke du kan arbejde ud af, hvad slags input værdi, du har med at gøre . Instruktioner
1
Anskaf en henvisning til input værdi, du vil kontrollere. Afhængigt af dit program , du måske allerede har input lagres som en variabel. Følgende kodeeksempel opretter en prøve strengvariabel at demonstrere teknikken : String input = "9 "
Denne variabel gemmer nummer ni som en streng. Metoderne til parsing nummertyper tager string parametre , så hvis dit input er i øjeblikket ikke gemt som en streng skabe en streng at medtage den som i det følgende eksempel: int mynumber = 6; String input = "" + mynumber ;
2
Opret en prøve kode blokken for dit nummer parsing proces. Indtast følgende skitse til en try-blok : try { //parse her }
Inde i denne blok, du kan placere koden til at parse dit input . Hvis du programmerer i et integreret udviklingsmiljø , du bliver nødt til at indeholde en try-blok eller antallet parsing proces vil forhindre din program fra kompilering. Den try-blok er en måde at beskytte din ansøgning mod talformater undtagelser.
3
Tilføj en fangst blok til din kode . Hvis koden inde i din try-blok ikke smide et talformat undtagelse vil behandlingen springe direkte til den catch-blok . Tilføj det efter din try-blok lukker som følger: catch ( NumberFormatException NFE ) { System.out.println ( "Not a nummer: " + nfe.getMessage () );}
Hvis input ikke er en række af indholdet af denne blok vil udføre. I øjeblikket indeholder det en simpel output erklæring til konsollen , men du kan tilføje din egen behandling inde i blokken.
4
Forsøg at parse dit input som et tal. Antallet wrapper klasser tillader dig at parse strenge som forskellige numeriske typer, herunder heltal , dobbelt præcision , korte , lange og flydende komma tal. Vælge, hvilken klasse der passer til dit program, og indtast det inde i try-blok . Følgende kodeeksempel viser teknikken for heltal : int inputNum = Integer.parseInt (input ), System.out.println ( "er et tal :" + inputNum )
Hvis indgangen er et tal den anden linje vil køre og koden vil ignorere catch-blok . Hvis input ikke er et tal på linje efter parse forsøg , ikke vil gennemføre som behandlingen straks vil flytte til catch-blok .
5.
Gem dine Java -filer , kompilere og køre dit program. Test det ved at ændre værdien af den oprindelige input variabel som i det følgende eksempel kode : String input = " p "
Dette vil få programmet til at smide en undtagelse , og indholdet af fangsten blok vil køre . Inden for try-blok indtaste den kode, du vil udføre , når indgangen er et tal. Inden for catch-blok indtaste den kode du ønsker at udføre , hvis det ikke er.