Hem Personliga finanser Java Programmering: Läsning av en linje i taget - dummies

Java Programmering: Läsning av en linje i taget - dummies

Video: Curso Java 13 - Herencia @JoseCodFacilito 2024

Video: Curso Java 13 - Herencia @JoseCodFacilito 2024
Anonim

I den här Java-kodlistan, Metoden PayOneEmployee illustrerar några användbara knep för att läsa data. I synnerhet varje skanner som du skapar har en NextLine-metod. (Du kanske inte använder den här NextLine-metoden, men metoden är ändå tillgänglig.)

När du ringer en skanners nästaLine-metod tar metoden allt fram till slutet av den aktuella textlinjen. I denna notering kan ett samtal till nextLine läsa en hel rad från EmployeeInfo. txt-fil. (I ett annat program kan en skanners nästaLine-samtal läsa allt som användaren skriver på tangentbordet upp till tryckning på Enter-tangenten.)

importera java. util. Scanner; importera java. io. Fil; importera java. io. IOException; public class DoPayroll {Public static void main (String args []) slänger IOException {Scanner diskScanner = ny Scanner (ny fil ("EmployeeInfo. txt")); för (int empNum = 1; empNum <= 3; empNum ++) {payOneEmployee (diskScanner);} diskScanner. Stäng ();} Statisk tomgångsbetalareEnmedarbetare (Scanner aScanner) {Medarbetare anEmployee = Ny Medarbetare (); en anställd. setName (aScanner. nextLine ()); en anställd. setJobTitle (aScanner. nextLine ()); en anställd. cutCheck (aScanner. nextDouble ()); ascanner. nextLine ();}}

Lägg märke till det noggranna valet av ord: nextLine läser allt fram till slutet av den aktuella raden. Tyvärr betyder det inte vad du tror att det betyder att läsa upp till slutet av den aktuella raden. Sammankoppling nextInt, nextDouble och nextLine samtal kan vara rörigt. Du måste titta på vad du gör och kontrollera programmets produktion noggrant.

För att förstå allt detta måste du vara smärtsamt medveten om en datafilens raster. Tänk på en radbrytning som extra karaktär, fast mellan en rad text och nästa. Föreställ dig då att ringa nextLine betyder att läsa allt till och med nästa radbrytning.

Ta en titt på den här siffran.

  • Om ett samtal till nextLine läser Barry Burd [LineBreak], läser det följande samtalet till nextLine VD [LineBreak].

  • Om ett samtal till nextDouble läser numret 5000. 00, läser det efterföljande samtalet till nextLine [LineBreak] som kommer strax efter numret 5000. 00. Det är allt nästaLine läser - en [LineBreak] och inget mer.)

  • Om ett samtal till nextLine läser [LineBreak] efter numret 5000. 00, läser det efterföljande samtalet till nextLine Harriet Ritter [LineBreak].

Så efter att ha läst numret 5000. 00 behöver du två samtal till nextLine för att få upp namnet Harriet Ritter. Det misstag du brukar göra är att glömma det första av dessa två samtal.

Se igen på filen i figuren. För att detta avsnitt ska fungera korrekt måste du ha en radbrytning efter den senaste 10000. 00. Om du inte gör det, gör ett slutligt samtal till nextLine ditt program krasch och bränna. Felmeddelandet läser NoSuchElementException: Ingen rad hittades.

Du kan bli förvånad över antalet quirks som du hittar i varje programmeringsspråkens skanningsmetoder. Till exempel förstörs den första nextLine som kommer från filen i figuren Barry Burd [LineBreak] från filen.

Men det nästa samtalet levererar Barry Burd (utan rader) till löpekoden. Så nextLine letar efter en radbrytning, och nästa Line förlorar linjepausen. Ja, det här är en subtil punkt. Och nej, denna subtila punkt ger aldrig någonting problem för någon.

Om den här verksamheten om nextDouble och nextLine förvirrar dig, var vänlig skyll inte på Java. Blanda inmatningssamtal är delikat arbete i vilket datorprogrammeringsspråk som helst. Och det väldigt otäcka är att varje programmeringsspråk närmar sig problemet lite annorlunda.

Vad du får veta om nästaLine i Java hjälper dig att förstå problemen när du läser C ++ eller Visual Basic, men det beskriver inte alla detaljer. Varje språks detaljer är unika för det språket.

Java Programmering: Läsning av en linje i taget - dummies

Redaktörens val

ASVAB Aritmetisk Reasoning (Math Word Problem) Practice Questions - Dummies

ASVAB Aritmetisk Reasoning (Math Word Problem) Practice Questions - Dummies

Aritmetik Reasoning questions are math problem som uttrycks i ett historiaformat. Ditt mål är att bestämma vad frågan frågar genom att plocka ut relevanta faktorer som behövs för att lösa problemet, ställa in matematiska ekvationer efter behov och komma fram till rätt lösning. Låter enkelt, eller hur? Provfrågor Försök din hand på följande ...

ASVAB Aritmetisk Reasoning Practice: Pengarproblem - Dummies

ASVAB Aritmetisk Reasoning Practice: Pengarproblem - Dummies

Alla har pengarproblem och den Aritmetiska Reasoning-undersökningen på ASVAB är inget undantag. Den goda nyheten är att du kan lösa problemen på ASVAB med bara en liten algebra. Övningsfrågor Dan köpte en fiskespole från David Edwins Fishing Emporium för 15 dollar. 95. Dan spenderade lite pengar på bete och två gånger ...

ASVAB Aritmetisk Reasoning Practice: Ojämlikheter - dummies

ASVAB Aritmetisk Reasoning Practice: Ojämlikheter - dummies

Den aritmetiska Reasoning-undersökningen på ASVAB kommer att innehålla vissa ojämlikhetsfrågor. Du kan identifiera dem eftersom de innehåller fraser som "åtminstone" och "mindre än eller lika med. "Practice-frågor Express matematiskt: Produkten av x och y är större än eller lika med kvoten av b och c. Benjamin arbetar 15 timmar ...

Redaktörens val

Java Programmering: Läsning av en linje i taget - dummies

Java Programmering: Läsning av en linje i taget - dummies

I denna Java-kodlista, PayOneEmployee Metoden illustrerar några användbara knep för att läsa data. I synnerhet varje skanner som du skapar har en NextLine-metod. (Du kan inte använda den här nästaLine-metoden, men metoden är ändå tillgänglig.) När du ringer en skanners nästaLine-metod tar metoden allt fram till slutet av ...

Java Programmering: Läsning från en fil - dummies

Java Programmering: Läsning från en fil - dummies

Många Java-program läser tecken från datorns tangentbord. Dessa program använder saker som Scanner, System. i och nextDouble - saker definierade i Java API. DoPayroll-programmet i den här listan lägger en ny spinn på den här historien. I stället för att läsa tecken från tangentbordet läser programmet tecken från EmployeeInfo. txt-fil. Filen lever ...

Java Programmering: Att ställa in datorn för att göra någonting - dummies

Java Programmering: Att ställa in datorn för att göra någonting - dummies

I Listning 1 nedan en spräng av Java-kod. Liksom alla nybörjare programmerare, förväntas du gawk ödmjukt vid koden. Men var inte skrämmad. När du hänger på det är programmeringen ganska lätt. Ja, det är roligt också. Listning 1: Ett enkelt Java-program / * * Ett program för att lista ...

Redaktörens val

Hur man lägger till bilder i ditt PowerPoint 2007 Photo Album - dummies

Hur man lägger till bilder i ditt PowerPoint 2007 Photo Album - dummies

Du kan placera bildtexter under bilderna i ditt PowerPoint fotoalbum. PowerPoint placerar först filnamnet i bildtexten, men du kan ta bort den här bildtexten och ange en av dina egna. För att lägga till bildtexter i ditt fotoalbum, följ dessa steg:

Hur man lägger till kommentarer till PowerPoint 2013 Presentationer - dummies

Hur man lägger till kommentarer till PowerPoint 2013 Presentationer - dummies

En kommentar i PowerPoint 2013 är mycket som en fästis. Skönheten i kommentarerna är att du kan slå dem på och av. Därför kan du se kommentarerna medan du redigerar din presentation, och du kan stänga av dem när det är dags för showen. För att lägga till en kommentar till en presentation, ...

Hur man lägger till Clip Art i en PowerPoint 2007 Slide - dummies

Hur man lägger till Clip Art i en PowerPoint 2007 Slide - dummies

PowerPoint Clip Art-uppgiftsrutan som låter dig söka efter nyckelord för en bild för att pryda din PowerPoint-presentation. Första gången du öppnar uppgiftspanelen i PowerPoint Clip Art, frågar en dialogruta att du söker efter hårddisken och katalogiserar alla dina bilder. Då kan du komma åt din ...