Java szkenner (példákkal)

Ebben az oktatóanyagban példák segítségével megismerhetjük a Java szkennert és annak módszereit.

A csomag Scannerosztálya java.utilkülönböző forrásokból származó bemeneti adatok beolvasására szolgál, például bemeneti adatfolyamok, felhasználók, fájlok stb. Vegyünk egy példát.

1. példa: Olvasson el egy szöveget a Scanner használatával

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

Kimenet

 Írja be a nevét: Kelvin A nevem Kelvin

A fenti példában vegye észre a sort

 Scanner input = new Scanner(System.in);

Itt létrehoztunk egy Scannermegnevezett bemenetű objektumot .

A System.inparaméter arra szolgál, hogy bemenetet vegyen a standard bemenetről. Ez ugyanúgy működik, mint a billentyűzetről származó bemenetek felvétele.

Ezután nextLine()az Scannerosztály módszerét alkalmaztuk egy szövegsor elolvasására a felhasználótól.

Most, hogy van némi elképzelése Scanner, fedezzen fel többet.

Import Scanner osztály

Amint a fenti példából java.util.Scannerláthatjuk, az Scannerosztály használata előtt importálnunk kell a csomagot .

 import java.util.Scanner;

Ha többet szeretne megtudni a csomagok importálásáról, látogasson el a Java csomagok oldalra.

Hozzon létre egy szkennerobjektumot Java-ban

Miután importáltuk a csomagot, a következőképpen hozhatunk létre Scannerobjektumokat.

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

Itt létrehoztuk az Scannerosztály objektumait , amelyek beolvassák az InputStream, a File és a String bemenetét.

Java szkenner módszerek a bevitelhez

Az Scannerosztály különféle módszereket kínál, amelyek lehetővé teszik számunkra a különböző típusú bemenetek beolvasását.

Módszer Leírás
nextInt() beolvas egy intértéket a felhasználótól
nextFloat() beolvassa floata felhasználó értékét
nextBoolean() beolvas egy booleanértéket a felhasználótól
nextLine() beolvassa a felhasználó szövegsorát
next() beolvas egy szót a felhasználótól
nextByte() beolvas egy byteértéket a felhasználótól
nextDouble() kiolvas egy double értéket a felhasználótól
nextShort() beolvas egy shortértéket a felhasználótól
nextLong() beolvas egy longértéket a felhasználótól

2. példa: 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(); ) )

Kimenet

 Írjon be egy egész számot: 22 A nextInt () használatával: 22

A fenti példában nextInt()egy egész érték leolvasására használtuk a módszert.

3. példa: Java szkenner 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(); ) )

Kimenet

 Adja meg a Dupla értéket: 33,33 A nextDouble () használatával: 33,33

A fenti példában nextDouble()lebegőpontos érték leolvasására használtuk a módszert.

4. példa: Java szkenner következő ()

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

Kimenet

 Írja be a nevét: Jonny Walker A következő () használatával: Jonny

A fenti példában a next()metódust arra használtuk, hogy egy karakterláncot olvassunk a felhasználótól.

Itt megadtuk a teljes nevet. A next()módszer azonban csak a keresztnevet olvassa.

Ez azért van, mert a next()módszer beolvassa a bemenetet a szóköz karakterig. Miután találkozott a szóközzel , visszaadja a karakterláncot (a fehér szóköz kivételével).

5. példa: 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(); ) )

Kimenet

 Írja be a nevét: Jonny Walker A nextLine () használatával: Jonny Walker

Az első példában a nextLine()metódust arra használtuk, hogy egy karakterláncot olvassunk a felhasználótól.

Ellentétben next()a nextLine()módszer a teljes beviteli sort leolvassa a szóközökkel együtt. A metódus akkor szűnik meg, amikor egy következő sor karakterrel találkozik .

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

Az Scannerosztály egy egész sort felolvas, és jelekre osztja a sort. A tokenek olyan kis elemek, amelyeknek van valamilyen jelentése a Java fordító számára. Például,

Tegyük fel, hogy van bemeneti karakterlánc:

 He is 22

Ebben az esetben a szkennerobjektum elolvassa a teljes sort, és a karakterláncokat tokenekre osztja: " He ", " is " és " 22 ". Ezután az objektum minden jelsorozaton átfordul, és az egyes jelsorokat a különböző módszereivel olvassa fel.

Megjegyzés : Alapértelmezés szerint a szóközöket használják a tokenek felosztásához.

érdekes cikkek...