Java-programmer kan lese eksterne data fra input- kilder som filer. Ved hjelp av klasser i Java input og output biblioteker , kan utviklere kode programmer for å lese numerisk eksempel flyttall . Avhengig av dataene i en inngang ressurs, kan utviklere trenger for å iverksette kontrolltiltak strukturer som looper i sine programmer , for å lese fra en kilde kontinuerlig til det ikke numeriske data er igjen å behandle . Input Klasser
Java-utviklere kan velge mellom en rekke klasser for å lette deres innspill prosesser . Den Scanner klassen inneholder metoder for å lese float innganger . En applikasjon kan derfor skape en forekomst av Scanner klassen , og deretter ringe sine metoder for å lese flyttall fra et angitt sted. For å bruke Scanner klassen , programmer trenger å importere pakken " java.io " og instantiate objekter av andre typer, for eksempel BufferedReader og FileReader , med angivelse av navn og plassering av input ressurs , før du passerer disse til Scanner konstruktør-metoden . Når et program er et objekt av Scanner type, kan det ringe forskjellige input- metoder for å lese strenger og bestemt antall typer , inkludert flyter.
Metoder
Scanner klassen gir en rekke inndatametoder for å lese data . Den " nextFloat "-metoden leser neste tegn i en fil som et flyttall . Følgende eksempelkode demonstrerer teknikken : float anumber = scanner.nextFloat ();
Denne koden vil kun fungere hvis filen fortsatt har innhold som programmet ikke har lest ennå, og hvis det neste token kan behandles som et flyttall . Hvis inngangen er ikke en dupp nummer type, kan programmet kaste et unntak og krasj .
Kontrollstrukturer
Java inntastinger som normalt innebære kontroll strukturer slike som looper . Ved å bruke en "mens " loop , kan programmerere være sikker på at deres innspill operasjoner ikke vil forsøke å lese fra en tom fil . Følgende eksempelkode demonstrerer en felles struktur i slike programmer : while ( scanner.hasNextFloat ( ) ) { float anumber = scanner.nextFloat (); }
"mens " loop vil bare kjøre hvis filen fortsatt har en flottør token å lese. Inne i loop, kan programmereren iverksette eventuelle nødvendige behandling på flyte elementet som nettopp har blitt lest inn
Hensyn
I Java , presenterer noen innspill drift en risiko av feilen. Hvis en fil ikke kan finnes eller inngangsdata er ikke av den type som ventet, kan et unntak oppstå. Av denne grunn , programmerere normalt inkludere sine float lesing operasjoner inne "try " blokker , med " fange " blokker som definerer hva som vil skje hvis et unntak . Følgende eksempelkode disposisjon demonstrerer denne strukturen : try { //forsøk float innspill } catch ( IOException floatException ) { //gjennomføre avvikshåndtering }
p Hvis en programmerer forsøker å gjennomføre inntastinger i en Integrated Development Environment uten bruke " prøve" og "fange " blokker , vil IDE vise feilmeldinger og hindre koden fra kompilering.