Bài 7: Nhập/Xuất trong Java
1. Nhập dữ liệu vào cho bài toán
Để lấy dữ liệu đầu vào từ người dùng trong Java, lớp Scanner được sử dụng. Lớp Scanner là một lớp tích hợp của gói java.util.
Lớp Scanner cung cấp nhiều phương thức để nhận vào các loại dữ liệu khác nhau từ người dùng.
2. Sử dụng lớp Scanner để nhập dữ liệu đầu vào như nào?
Bước 1: Khai báo thư viện
Đầu tiên, ta cần khai báo lớp Scanner để sử dụng các phương thức có trong lớp này. Để khai báo lớp Scanner, hãy sử dụng câu lệnh sau:
import java.util.Scanner;
Bước 2: Tạo đối tượng của lớp Scanner
Khi này, bạn cần tạo một đối tượng như là một thể hiện từ lớp Scanner để sử dụng các phương thức của lớp này. Để tạo đối tượng của lớp Scanner, hãy gọi hàm tạo Scanner(). Quan sát vào lệnh dưới đây:
Scanner sc = new Scanner(System.in);
Bước 3: Nhập dữ liệu
Lớp Scanner cung cấp nhiều phương thức hữu ích để lấy dữ liệu vào từ người dùng với nhiều kiểu dữ liệu khác nhau. Ví dụ, nếu bạn muốn nhập một giá trị số nguyên, bạn sử dụng phương thức nextInt(). Quan sát lệnh sau:
int so_luong = sc.nextInt();
Với câu lệnh trên, chương trình sẽ chờ người dùng nhập vào một số nguyên. Sau khi nhập vào một số nguyên từ bàn phím, giá trị đó sẽ được gán vào cho biến so_luong.
3. Ví dụ về nhập dữ liệu vào từ bàn phím trong Java
Trong ví dụ sau, ta sẽ nhập vào hai số nguyên từ bàn phím. Tính tổng hai số nguyên này và hiển thị kết quả ra màn hình.
package bai_7_nha_xuat.tinh_tong_hai_so_nguyen;
import java.util.Scanner;
/**
*
* @author hvtuan
*/
public class Tong_hai_so {
public static void main(String[] args) {
// tạo đối tượng nhập
Scanner sc = new Scanner(System.in);
// Nhập vào số thứ nhất
System.out.print("Nhap vao so nguyen thu nhat: ");
int a = sc.nextInt();
// Nhập vào số thứ hai
System.out.print("Nhap vao so nguyen thu hai: ");
int b = sc.nextInt();
// Tính tổng
int c = a + b;
// hiển thị kết quả
System.out.println("Tong cua hai so vua nhap la: " + c);
}
}
Kết quả chương trình trên là:
4. Các phương thức cho các kiểu nhập dữ liệu đầu vào
Lớp Scanner cung cấp những phương thức khác nhau phục vụ cho việc nhập các kiểu dữ liệu khác nhau từ người dùng. Dưới đây là bảng liệt kê các phương thức hỗ trợ nhập dữ liệu:
Số thứ tự | Mô tả |
---|---|
1 |
String next() Nhập vào một chuỗi/xâu ký tự. |
2 |
BigDecimal nextBigDecimal() Nhập vào một số BigDecimal. |
3 |
BigInteger nextBigInteger() Nhập vào một số BigInteger. |
4 |
boolean nextBoolean() Nhập vào giá trị Boolean |
5 |
byte nextByte() Nhập vào một số byte. |
6 |
double nextDouble() Nhập vào một số double. |
7 |
float nextFloat() Nhập vào một số float. |
8 |
int nextInt() Nhập vào một số int. |
9 |
String nextLine() Nhập vào xâu ký tự. |
10 |
long nextLong() Nhập vào một số long. |
11 |
short nextShort() Nhập vào một số short. |
Lưu ý: Cần phân biệt cách sử dụng của phương thức next() và phương thức nextLine().