V tej vadnici bomo s pomočjo primerov spoznali Java Scanner in njegove metode.
Scanner
Razred java.util
paket se uporablja za branje vhodnih podatkov iz različnih virov, kot vhodnih tokov, uporabnike, datoteke, itd Vzemimo primer.
Primer 1: Preberite vrstico besedila s pomočjo optičnega bralnika
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(); ) )
Izhod
Vpišite svoje ime: Kelvin. Moje ime je Kelvin
V zgornjem primeru opazite vrstico
Scanner input = new Scanner(System.in);
Tu smo ustvarili objekt z Scanner
imenom input.
System.in
Parameter se uporablja, da se prispevek iz standardnega vhoda. Deluje tako kot jemanje vhodov s tipkovnice.
Nato smo uporabili nextLine()
metodo Scanner
razreda za branje vrstice besedila od uporabnika.
Zdaj, ko imate nekaj ideje o tem Scanner
, raziščimo več o tem.
Uvozi razred optičnega bralnika
Kot lahko vidimo iz zgornjega primera, moramo java.util.Scanner
paket uporabiti, preden lahko uporabimo Scanner
razred.
import java.util.Scanner;
Če želite izvedeti več o uvozu paketov, obiščite Java Packages.
Ustvarite objekt optičnega bralnika v Javi
Ko uvozimo paket, je opisano, kako lahko ustvarimo Scanner
predmete.
// 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);
Tu smo ustvarili predmete Scanner
razreda, ki bodo brali vhodne podatke iz InputStream, File in String.
Java Scanner Metode za vnos
Scanner
Razred določa različne metode, ki nam omogočajo, da se glasi vložkov različnih tipov.
Metoda | Opis |
---|---|
nextInt() | prebere int vrednost od uporabnika |
nextFloat() | prebere float vrednost iz uporabnika |
nextBoolean() | prebere boolean vrednost od uporabnika |
nextLine() | prebere vrstico besedila od uporabnika |
next() | prebere besedo uporabnika |
nextByte() | prebere byte vrednost od uporabnika |
nextDouble() | prebere doubl e vrednost od uporabnika |
nextShort() | prebere short vrednost od uporabnika |
nextLong() | prebere long vrednost od uporabnika |
2. primer: Java Scanner 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(); ) )
Izhod
Vnesite celo število: 22 Uporaba nextInt (): 22
V zgornjem primeru smo nextInt()
metodo uporabili za branje celoštevilčne vrednosti.
Primer 3: Pregledovalnik Java 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(); ) )
Izhod
Vnesite Double value: 33.33 Uporaba nextDouble (): 33.33
V zgornjem primeru smo nextDouble()
metodo uporabili za branje vrednosti s plavajočo vejico.
Primer 4: Naslednji pregledovalnik Java ()
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(); ) )
Izhod
Vnesite svoje ime: Jonny Walker Uporaba naslednjega (): Jonny
V zgornjem primeru smo next()
metodo uporabili za branje niza od uporabnika.
Tukaj smo navedli polno ime. Vendar next()
metoda bere samo prvo ime.
To je zato, ker next()
metoda bere vnos do presledka . Ko pride do presledka , vrne niz (brez presledkov).
Primer 5: Pregledovalnik Java 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(); ) )
Izhod
Vnesite svoje ime: Jonny Walker Uporaba nextLine (): Jonny Walker
V prvem primeru smo nextLine()
metodo uporabili za branje niza od uporabnika.
Za razliko next()
od nextLine()
metode metoda prebere celotno vrstico vnosa, vključno s presledki. Postopek se ustavi, ko naleti na naslednji znak vrstice .
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
Scanner
Razred prebere celotno linijo in deli linijo v žetonih. Žetoni so majhni elementi, ki imajo nekaj pomena za prevajalnik Java. Na primer
Recimo, da obstaja vhodni niz:
He is 22
V tem primeru bo optični bralnik prebral celotno vrstico in niz razdelil na žetone: " He ", " is " in " 22 ". Nato se objekt ponovi nad vsakim žetonom in prebere vsak žeton z različnimi metodami.
Opomba : privzeto se presledek uporablja za razdelitev žetonov.