Java-skanner (koos näidetega)

Selles õpetuses õpime näidete abil Java-skannerit ja selle meetodeid.

ScannerKlassi java.utilpakett kasutatakse lugeda sisendandmed erinevatest allikatest nagu sisendid, kasutajate, faile jne Võtame näiteks.

Näide 1: lugege skanneri abil tekstirida

 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(); ) )

Väljund

 Sisestage oma nimi: Kelvin Minu nimi on Kelvin

Ülaltoodud näites märkake joont

 Scanner input = new Scanner(System.in);

Siin oleme loonud Scannernimega sisendi objekti .

System.inParameetrit kasutatakse võtta sisend standard sisend. See töötab täpselt nagu klaviatuurilt sisendite võtmine.

Seejärel oleme kasutanud klassi nextLine()meetodit Scannerkasutaja tekstirea lugemiseks.

Nüüd, kui teil on mõni idee Scanner, uurime selle kohta rohkem.

Import skanneriklass

Nagu näeme ülaltoodud näitest, peame java.util.Scannerenne Scannerklassi kasutamist paketi importima .

 import java.util.Scanner;

Pakettide importimise kohta lisateabe saamiseks külastage Java pakette.

Looge Java-s skanneri objekt

Kui pakett on imporditud, saate Scannerobjekte luua järgmiselt .

 // 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);

Siin oleme loonud Scannerklassi objektid, mis loevad sisendeid vastavalt InputStreamist, File'ist ja Stringist.

Java-skanneri meetodid sisendi saamiseks

ScannerKlassi pakub erinevaid meetodeid, mis võimaldavad meil lugeda sisendite erinevat tüüpi.

Meetod Kirjeldus
nextInt() loeb intkasutajalt väärtust
nextFloat() loeb floatkasutajast väärtusvormi
nextBoolean() loeb booleankasutajalt väärtust
nextLine() loeb kasutajalt tekstirida
next() loeb kasutajalt sõna
nextByte() loeb bytekasutajalt väärtust
nextDouble() loeb doublkasutajalt e-väärtuse
nextShort() loeb shortkasutajalt väärtust
nextLong() loeb longkasutajalt väärtust

Näide 2: Java-skanner 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(); ) )

Väljund

 Sisestage täisarv: 22 Kasutades nextInt (): 22

Ülaltoodud näites oleme nextInt()meetodit kasutanud täisarvu lugemiseks.

Näide 3: Java-skanner 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(); ) )

Väljund

 Sisestage Double väärtus: 33.33 nextDouble () kasutamine: 33.33

Ülaltoodud näites oleme nextDouble()meetodit kasutanud ujukoma väärtuse lugemiseks.

Näide 4: Java-skanner järgmine ()

 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(); ) )

Väljund

 Sisestage oma nimi: Jonny Walker Järgmise () kasutamine: Jonny

Ülaltoodud näites oleme kasutanud next()meetodit stringi lugemiseks kasutajalt.

Siin oleme esitanud täisnime. Kuid next()meetod loeb ainult eesnime.

Seda seetõttu, et next()meetod loeb sisendi kuni tühimärgini . Kui tühimik on leitud, tagastab see stringi (välja arvatud tühimärk).

Näide 5: Java-skanner 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(); ) )

Väljund

 Sisestage oma nimi: Jonny Walker NextLine () abil: Jonny Walker

Esimeses näites oleme nextLine()meetodit kasutanud stringi lugemiseks kasutajalt.

Erinevalt next()on nextLine()meetod loeb terve rea sisend koos tühikutega. Meetod lõpetatakse, kui see kohtub järgmise rea tähemärgiga .

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

ScannerKlassi loeb terve rea ja jagab rida märke. Märgid on väikesed elemendid, millel on Java kompilaatori jaoks mingi tähendus. Näiteks,

Oletame, et on sisendstring:

 He is 22

Sel juhul loeb skanneri objekt kogu rea ja jagab stringi märgideks: " Ta ", " on " ja " 22 ". Seejärel itereerib objekt iga loa ja loeb iga märgi selle erinevatel meetoditel.

Märkus . Vaikimisi kasutatakse tühikute jagamiseks tühikut.

Huvitavad Artiklid...