scanner-java

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về Scanner trong Java và các phương thức của nó với sự trợ giúp của các ví dụ.

Lớp Scanner, là một lớp nằm trong gói java.util, được sử dụng để đọc dữ liệu đầu vào từ các nguồn khác nhau như luồng đầu vào, người dùng, tệp.

Ta sẽ thực hiện một ví dụ như sau:

import java.util.Scanner; class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter your name: "); String name = input.nextLine(); System.out.println("My name is " + name); input.close(); } }
Code language: JavaScript (javascript)

Output:

Enter your name: HDD My name is HDD

Sử dụng lớp Scanner trong Java

Sau khi nhập lớp Scanner, chúng ta phải lấy thể hiện của lớp này để đọc đầu vào từ người dùng. Chúng ta sẽ tạo một cá thể và chuyển Input Stream System.in trong khi tạo cá thể như sau:

Scanner ScannerObject = new scanner (System.in);

Ở đây, bằng cách viết Scanner scannerObject, chúng ta đang khai báo scannerObject là đối tượng của lớp máy quét. System.in biểu thị rằng đầu vào sẽ được cấp cho Hệ thống.

Ví dụ các phương thức của Scanner trong Java

Scanner trong Java nextInt ()

import java.util.Scanner; class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Enter an integer: "); int data1 = input.nextInt(); System.out.println("Using nextInt(): " + data1); input.close(); } }
Code language: JavaScript (javascript)

Output:

Enter an integer: 26 Using nextInt(): 26

Trong ví dụ trên, chúng ta đã sử dụng phương thức nextInt() để đọc một giá trị số nguyên.

Máy quét 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(); } }
Code language: JavaScript (javascript)

Output

Enter Double value: 33.33 Using nextDouble(): 33.33
Code language: CSS (css)

Trong ví dụ trên, chúng ta đã sử dụng phương thức nextDouble() để đọc một giá trị dấu phẩy động.

Scanner Java next()

import java.util.Scanner; class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter your name: "); String value = input.next(); System.out.println("Using next(): " + value); input.close(); } }
Code language: JavaScript (javascript)

Output:

Enter your name: Admin Hdd Using next(): Admin

Trong ví dụ trên, chúng tôi đã sử dụng phương thức next() để đọc một chuỗi từ người dùng.

Ở đây, chúng tôi đã cung cấp tên đầy đủ. Tuy nhiên, phương thức next() chỉ đọc tên đầu tiên.

Điều này là do phương thức next() đọc đầu vào lên đến  tự khoảng trắng . Khi gặp phải khoảng trắng , nó sẽ trả về chuỗi (không bao gồm khoảng trắng).

Scanner trong  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(); } }
Code language: JavaScript (javascript)

Output

Enter your name: Admin Hdd Using nextLine(): Admin Hdd

Trong ví dụ đầu tiên, chúng tôi đã sử dụng phương thức nextLine() để đọc một chuỗi từ người dùng.

Không giống như phương thức next(), nextLine()đọc toàn bộ dòng đầu vào bao gồm cả khoảng trắng. Phương thức bị kết thúc khi nó gặp một ký tự dòng tiếp theo \n,.

Hàm tạo của lớp Scanner trong Java

Lớp Scanner chứa các hàm tạo cho các mục đích cụ thể mà chúng ta có thể sử dụng trong chương trình Java của mình.

STTHàm tạoMô tả
1Scanner (Nguồn tệp)tạo đối tượng Scanner tạo ra các giá trị được quét từ tệp được chỉ định
2Scanner (File source, String charsetName)xây dựng đối tượng Scanner tạo ra các giá trị được quét từ tệp được chỉ định
3Scanner (InputStream source)tạo một đối tượng Scanner mới tạo ra các giá trị được quét từ luồng đầu vào được chỉ định.
4Scanner (InputStream source, String charsetName)tạo một Scanner mới tạo ra các giá trị được quét từ luồng đầu vào được chỉ định.
5Scanner (Readable source)tạo một Scanner mới tạo ra các giá trị được quét từ nguồn được chỉ định.
6Scanner (String source)tạo một Scanner mới tạo ra các giá trị được quét từ chuỗi được chỉ định.
7Scanner (ReadableByteChannel source)tạo một Scanner mới tạo ra các giá trị được quét từ kênh được chỉ định.
8Scanner (ReadableByteChannel source, String charsetName)tạo một Máy quét mới tạo ra các giá trị được quét từ kênh được chỉ định.
9Scanner (Path source)tạo một Scanner mới tạo ra các giá trị được quét từ tệp được chỉ định.
10Scanner (Path source, String charsetName)tạo một Scanner mới tạo ra các giá trị được quét từ tệp được chỉ định

Tổng kết

Lớp Scanner là một cách hữu dụng giúp lập trình viên lấy đầu vào người dùng trong chương trình. Bài viết trên đã giới thiệu tới bạn về lớp Scanner trong Java và các phương thức và hàm tạo của lớp Scanner. Hy vọng bạn có thể hiểu rõ hơn về Scanner trong Java qua bài viết này.

Bài viết liên quan

Leave a Reply

Your email address will not be published.

TÀI LIỆU DEV WORLD
Cẩm nang phát triển bền vững với nghề lập trình!