Java-skanneri (esimerkkejä)

Tässä opetusohjelmassa opit Java Scannerista ja sen menetelmistä esimerkkien avulla.

ScannerLuokka java.utilpaketin voi lukea syöttää tietoja eri lähteistä, kuten tuotantopanoksia, käyttäjät, tiedostot jne Otetaanpa esimerkki.

Esimerkki 1: Lue tekstirivi skannerilla

 import java.util.Scanner; class Main ( public static void main(String() args) ( // creates an object of Scanner Scanner input = new Scanner(System.in); System.out.print("Enter your name: "); // takes input from the keyboard String name = input.nextLine(); // prints the name System.out.println("My name is " + name); // closes the scanner input.close(); ) )

Tuotos

 Kirjoita nimesi: Kelvin Nimeni on Kelvin

Huomaa yllä olevassa esimerkissä viiva

 Scanner input = new Scanner(System.in);

Tässä olemme luoneet Scannernimeltään syötetyn objektin .

System.inParametria käytetään ottamaan panos vakiosyötöstä. Se toimii aivan kuten ottamalla sisääntulot näppäimistöltä.

Olemme sitten käyttäneet nextLine()menetelmää Scannerluokan lukea rivi tekstiä käyttäjältä.

Nyt kun sinulla on jonkinlainen käsitys siitä Scanner, tutkitaan lisää siitä.

Tuo skanneriluokka

Kuten voimme nähdä yllä olevasta esimerkistä, meidän on tuotava java.util.Scannerpaketti, ennen kuin voimme käyttää Scannerluokkaa.

 import java.util.Scanner;

Lisätietoja pakettien tuonnista on Java-paketeissa.

Luo skanneriobjekti Java-tiedostossa

Kun tuot paketin, voimme luoda Scanneresineitä seuraavasti.

 // read input from the input stream Scanner sc1 = new Scanner(InputStream input); // read input from files Scanner sc2 = new Scanner(File file); // read input from a string Scanner sc3 = new Scanner(String str);

Tässä olemme luoneet Scannerluokan objektit, jotka lukevat vastaavasti InputStream-, File- ja String-syötteet.

Java-skannerimenetelmät syötteen ottamiseksi

ScannerLuokka tarjoaa erilaisia menetelmiä, joiden avulla voimme lukea tuotantopanosten erityyppisiä.

Menetelmä Kuvaus
nextInt() lukee intkäyttäjän arvon
nextFloat() lukee floatkäyttäjän arvolomakkeen
nextBoolean() lukee booleankäyttäjän arvon
nextLine() lukee tekstirivin käyttäjältä
next() lukee käyttäjän sanan
nextByte() lukee bytekäyttäjän arvon
nextDouble() lukee doublkäyttäjältä e-arvon
nextShort() lukee shortkäyttäjän arvon
nextLong() lukee longkäyttäjän arvon

Esimerkki 2: Java-skanneri nextInt ()

 import java.util.Scanner; class Main ( public static void main(String() args) ( // creates a Scanner object Scanner input = new Scanner(System.in); System.out.println("Enter an integer: "); // reads an int value int data1 = input.nextInt(); System.out.println("Using nextInt(): " + data1); input.close(); ) )

Tuotos

 Syötä kokonaisluku: 22 NextInt (): n avulla: 22

Yllä olevassa esimerkissä olemme käyttäneet nextInt()menetelmää kokonaisluvun lukemiseen.

Esimerkki 3: Java-skanneri nextDouble ()

 import java.util.Scanner; class Main ( public static void main(String() args) ( // creates an object of Scanner Scanner input = new Scanner(System.in); System.out.print("Enter Double value: "); // reads the double value double value = input.nextDouble(); System.out.println("Using nextDouble(): " + value); input.close(); ) )

Tuotos

 Syötä kaksinkertainen arvo: 33,33 nextDouble (): n käyttö: 33,33

Yllä olevassa esimerkissä olemme käyttäneet nextDouble()menetelmää liukulukuarvon lukemiseen.

Esimerkki 4: Java-skanneri seuraava ()

 import java.util.Scanner; class Main ( public static void main(String() args) ( // creates an object of Scanner Scanner input = new Scanner(System.in); System.out.print("Enter your name: "); // reads the entire word String value = input.next(); System.out.println("Using next(): " + value); input.close(); ) )

Tuotos

 Anna nimesi: Jonny Walker Seuraava (): Jonny

Yllä olevassa esimerkissä olemme käyttäneet next()menetelmää lukemaan merkkijono käyttäjältä.

Tässä olemme toimittaneet koko nimen. next()Menetelmä lukee kuitenkin vain etunimen.

Tämä johtuu siitä, että next()menetelmä lukee syötteen välilyöntiin asti . Kun tyhjätila on kohdattu, se palauttaa merkkijonon (lukuun ottamatta tyhjää tilaa).

Esimerkki 5: Java Scanner nextLine ()

 import java.util.Scanner; class Main ( public static void main(String() args) ( // creates an object of Scanner Scanner input = new Scanner(System.in); System.out.print("Enter your name: "); // reads the entire line String value = input.nextLine(); System.out.println("Using nextLine(): " + value); input.close(); ) )

Tuotos

 Kirjoita nimesi: Jonny Walker NextLine (): Jonny Walker

Ensimmäisessä esimerkissä olemme käyttäneet nextLine()menetelmää lukemaan merkkijono käyttäjältä.

Toisin next(), nextLine()menetelmä lukee koko rivin syötteestä, mukaan lukien tilat. Menetelmä lopetetaan, kun se kohtaa seuraavan rivin merkki, .

Recommended Reading: Java Scanner skipping the nextLine().

Java Scanner with BigInteger and BigDecimal

Java scanner can also be used to read the big integer and big decimal numbers.

  • nextBigInteger() - reads the big integer value from the user
  • nextBigDecimal() - reads the big decimal value from the user

Example 4: Read BigInteger and BigDecimal

 import java.math.BigDecimal; import java.math.BigInteger; import java.util.Scanner; class Main ( public static void main(String() args) ( // creates an object of Scanner Scanner input = new Scanner(System.in); System.out.print("Enter a big integer: "); // reads the big integer BigInteger value1 = input.nextBigInteger(); System.out.println("Using nextBigInteger(): " + value1); System.out.print("Enter a big decimal: "); // reads the big decimal BigDecimal value2 = input.nextBigDecimal(); System.out.println("Using nextBigDecimal(): " + value2); input.close(); ) )

Output

 Enter a big integer: 987654321 Using nextBigInteger(): 987654321 Enter a big decimal: 9.55555 Using nextBigDecimal(): 9.55555

In the above example, we have used the java.math.BigInteger and java.math.BigDecimal package to read BigInteger and BigDecimal respectively.

Working of Java Scanner

ScannerLuokka lukee koko rivin ja jakaa rivi kuponkia. Tunnukset ovat pieniä elementtejä, joilla on jonkinlainen merkitys Java-kääntäjälle. Esimerkiksi,

Oletetaan, että on syötemerkkijono:

 He is 22

Tässä tapauksessa skanneriobjekti lukee koko rivin ja jakaa merkkijonon rahakkeiksi: " Hän ", " on " ja " 22 ". Sitten objekti iteroi jokaisen tunnuksen ja lukee jokaisen tunnuksen eri menetelmillä.

Huomaa : Tunnusten jakamiseen käytetään oletusarvoisesti välilyöntiä.

Mielenkiintoisia artikkeleita...