Tự học Java | Lớp Scanner trong Java » https://blogchiase247.net

Related Articles

Trong hướng dẫn này, tất cả chúng ta sẽ khám phá về Scanner trong Java và những phương pháp của nó với sự trợ giúp của những ví dụ .

lớp Scanner của gói java.util phần mềm được sử dụng để đọc dữ liệu đầu vào từ các nguồn khác nhau như suối đầu vào, người dùng, tập tin, vv Hãy lấy một ví dụ.

1. Ví dụ 1: Đọc một dòng văn bản bằng máy quét

/*
Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
@author cafedevn
Contact: [email protected]Fanpage: https://www.facebook.com/cafedevn
Group: https://www.facebook.com/groups/cafedev.vn/
Instagram: https://instagram.com/cafedevn
Twitter: https://twitter.com/CafedeVn
Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
Pinterest: https://www.pinterest.com/cafedevvn/
YouTube: https://www.youtube.com/channel/UCE7zpY_SlHGEgo67pHxqIoA/
*/
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(); }
}

Đầu ra

Enter your name: Kelvin
My name is Kelvin

Trong ví dụ trên, hãy chú ý dòng

Scanner input = new Scanner(System.in);

Ở đây, chúng tôi đã tạo một đối tượng người dùng Scanner có tên nguồn vào .

tham số System. in được sử dụng để lấy nguồn vào từ đầu vào tiêu chuẩn. Nó hoạt động giải trí giống như lấy đầu vào từ bàn phím .

Sau đó, chúng tôi đã sử dụng phương pháp nextLine ( ) của lớp Scanner để đọc một dòng văn bản từ người dùng .

Bây giờ bạn đã có 1 số ít sáng tạo độc đáo về nó Scanner, hãy cùng tò mò thêm về nó .

2. Nhập lớp máy quét

Như tất cả chúng ta hoàn toàn có thể thấy từ ví dụ trên, tất cả chúng ta cần nhập gói java.util. Scanner trước khi hoàn toàn có thể sử dụng lớp Scanner .

import java.util. Scanner ;

Để tìm hiểu và khám phá thêm về cách nhập gói, hãy truy vấn Gói Java .

3. Tạo một đối tượng máy quét trong Java

Sau khi chúng tôi nhập gói, đây là cách chúng tôi hoàn toàn có thể tạo Scanner những đối tượng người tiêu dùng .

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

Ở đây, tất cả chúng ta đã tạo những đối tượng người dùng của lớp Scanner sẽ đọc nguồn vào từ InputStream, File và String tương ứng .

4. Phương thức máy quét Java để lấy đầu vào

lớp Scanner cung ứng phương pháp khác nhau mà được cho phép tất cả chúng ta đọc nguồn vào của những loại khác nhau .

phương thức Sự miêu tả
nextInt() đọc một giá trị int từ người dùng
nextFloat() đọc một dạng giá trị float cho người dùng
nextBoolean() đọc mộtgiá trị boolean từ người dùng
nextLine() đọc một dòng văn bản từ người dùng
next() đọc một từ từ người dùng
nextByte() đọc một giá trị byte từ người dùng
nextDouble() đọc một giá trị doubl e từ người dùng
nextShort() đọc một giá trị short từ người dùng
nextLong() đọc một giá trị long từ người dùng

4.1 Ví dụ 2 : Scanner trong 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(); }
}

Đầu ra

Enter an integer:
22
Using nextInt(): 22

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

4.2 Ví dụ 3 : 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(); }
}

Đầu ra

Enter Double value: 33.33
Using nextDouble(): 33.33

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

4.3 Ví dụ 4 : Scanner Java next ( )

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

Đầu ra

Enter your name: Jonny Walker
Using next(): Jonny

Trong ví dụ trên, chúng tôi đã sử dụng phương pháp 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).

4.4 Ví dụ 5 : Scanner trong Java nextLine ( )

/*
Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
@author cafedevn
Contact: [email protected]Fanpage: https://www.facebook.com/cafedevn
Group: https://www.facebook.com/groups/cafedev.vn/
Instagram: https://instagram.com/cafedevn
Twitter: https://twitter.com/CafedeVn
Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
Pinterest: https://www.pinterest.com/cafedevvn/
YouTube: https://www.youtube.com/channel/UCE7zpY_SlHGEgo67pHxqIoA/
*/
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(); }
}

Đầu ra

Enter your name: Jonny Walker
Using nextLine(): Jonny Walker

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

Không giống như phương pháp next ( ), nextLine ( ) đọc hàng loạt dòng đầu vào gồm có cả khoảng chừ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, .

Khuyến nghị đọc: Máy quét Java bỏ qua nextLine () .

5. Scanner trong Java với BigInteger và BigDecimal

Máy quét Java cũng hoàn toàn có thể được sử dụng để đọc số nguyên lớn và số thập phân lớn .

  • nextBigInteger () – đọc giá trị số nguyên lớn từ người dùng
  • nextBigDecimal () – đọc giá trị thập phân lớn từ người dùng

5.5 Ví dụ 4 : Đọc BigInteger và 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(); }
}

Đầu ra

Enter a big integer: 987654321
Using nextBigInteger(): 987654321
Enter a big decimal: 9.55555
Using nextBigDecimal(): 9.55555

Trong ví dụ trên, tất cả chúng ta đã sử dụng gói java.math. BigInteger và java.math. BigDecimal để đọc BigIntegervà BigDecimal tương ứng .

6. Hoạt động của Máy quét Java

lớp Scannertoàn bộ một dòng và chia dòng vào thẻ. Token là những thành phần nhỏ có 1 số ít ý nghĩa so với trình biên dịch Java. Ví dụ ,

Giả sử có một chuỗi nguồn vào :

He is 22

Trong trường hợp này, đối tượng máy quét sẽ đọc toàn bộ dòng và chia chuỗi thành các mã thông báo: ” He “, ” is ” và ” 22 “. Đối tượng sau đó lặp lại từng mã thông báo và đọc từng mã thông báo bằng các phương thức khác nhau của nó.

Lưu ý : Theo mặc định, khoảng trắng được sử dụng để chia các mã thông báo.

Cài ứng dụng cafedev để dễ dàng cập nhật tin và học lập trình mọi lúc mọi nơi tại đây.

Nguồn và Tài liệu tiếng anh tham khảo:

Tài liệu từ cafedev:

Nếu bạn thấy hay và có ích, bạn hoàn toàn có thể tham gia những kênh sau của cafedev để nhận được nhiều hơn nữa :

Chào thân ái và quyết thắng !

Đăng ký kênh youtube để ủng hộ Cafedev nha các bạn, Thanks you!

More on this topic

Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Advertismentspot_img

Popular stories