Pengimbas Java (Dengan Contoh)

Dalam tutorial ini, kita akan belajar mengenai Java Scanner dan kaedahnya dengan bantuan contoh.

The Scannergolongan orang java.utilpakej digunakan untuk membaca data input daripada pelbagai sumber seperti sungai input, pengguna, fail, dan lain-lain Mari kita mengambil contoh.

Contoh 1: Baca Baris Teks Menggunakan Pengimbas

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

Pengeluaran

 Masukkan nama anda: Kelvin Nama saya Kelvin

Dalam contoh di atas, perhatikan garisnya

 Scanner input = new Scanner(System.in);

Di sini, kami telah membuat objek Scannerbernama input.

The System.inparameter digunakan untuk mengambil input dari input standard. Ia berfungsi seperti mengambil input dari papan kekunci.

Kami kemudian menggunakan nextLine()kaedah Scannerkelas untuk membaca sebaris teks dari pengguna.

Setelah anda mempunyai idea Scanner, mari kita meneroka lebih lanjut mengenainya.

Kelas Pengimbas Import

Seperti yang dapat kita lihat dari contoh di atas, kita perlu mengimport java.util.Scannerpakej sebelum kita dapat menggunakan Scannerkelas.

 import java.util.Scanner;

Untuk mengetahui lebih lanjut mengenai mengimport pakej, kunjungi Pakej Java.

Buat Objek Pengimbas di Java

Sebaik sahaja kami mengimport pakej, berikut adalah bagaimana kita dapat membuat Scannerobjek.

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

Di sini, kami telah membuat objek Scannerkelas yang masing-masing akan membaca input dari InputStream, File, dan String.

Kaedah Pengimbas Java untuk Mengambil Input

The Scannerkelas menyediakan pelbagai kaedah yang membolehkan kita untuk membaca input jenis yang berbeza.

Kaedah Penerangan
nextInt() membaca intnilai dari pengguna
nextFloat() membaca floatnilai membentuk pengguna
nextBoolean() membaca booleannilai dari pengguna
nextLine() membaca sebaris teks dari pengguna
next() membaca sepatah kata dari pengguna
nextByte() membaca bytenilai dari pengguna
nextDouble() membaca doublnilai e dari pengguna
nextShort() membaca shortnilai dari pengguna
nextLong() membaca longnilai dari pengguna

Contoh 2: Pengimbas Java 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(); ) )

Pengeluaran

 Masukkan bilangan bulat: 22 Menggunakan nextInt (): 22

Dalam contoh di atas, kami telah menggunakan nextInt()kaedah untuk membaca nilai integer.

Contoh 3: Java Scanner 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(); ) )

Pengeluaran

 Masukkan Nilai berganda: 33.33 Menggunakan nextDouble (): 33.33

Dalam contoh di atas, kami telah menggunakan nextDouble()kaedah untuk membaca nilai floating-point.

Contoh 4: Pengimbas Java seterusnya ()

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

Pengeluaran

 Masukkan nama anda: Jonny Walker Menggunakan seterusnya (): Jonny

Dalam contoh di atas, kami telah menggunakan next()kaedah untuk membaca rentetan dari pengguna.

Di sini, kami telah memberikan nama penuh. Walau bagaimanapun, next()kaedah itu hanya membaca nama pertama.

Ini kerana next()kaedah membaca input hingga watak ruang kosong . Setelah ruang kosong ditemui, ia mengembalikan rentetan (tidak termasuk ruang kosong).

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

Pengeluaran

 Masukkan nama anda: Jonny Walker Menggunakan nextLine (): Jonny Walker

Dalam contoh pertama, kami telah menggunakan nextLine()kaedah untuk membaca rentetan dari pengguna.

Tidak seperti next(), nextLine()kaedah membaca keseluruhan baris input termasuk spasi. Kaedah ini ditamatkan apabila ia menghadapi watak garis depan, .

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

The Scannerkelas membaca seluruh garis dan membahagikan garis ke dalam token. Token adalah elemen kecil yang mempunyai makna bagi penyusun Java. Sebagai contoh,

Katakan ada rentetan input:

 He is 22

Dalam kes ini, objek pengimbas akan membaca keseluruhan baris dan membahagi rentetan menjadi token: " Dia ", " adalah " dan " 22 ". Objek kemudian berulang setiap token dan membaca setiap token menggunakan kaedah yang berbeza.

Nota : Secara lalai, ruang kosong digunakan untuk membahagikan token.

Artikel menarik...