Java

Cách nhập dữ liệu từ bàn phím (đọc dữ liệu từ console) trong Java

Trong Java, có 3 cách để nhập dữ liệu từ bàn phím (đọc dữ liệu từ console):

  1. Dùng BufferedReader + InputStreamReader (Những phiên bản Java cũ)
  2. Dùng Scanner (JDK 1.5)
  3. System.console (JDK 1.6)

1. Nhập dữ liệu sử dụng BufferedReader + InputStreamReader

Đây là cách truyền thống được dùng từ thời JDK 1.4 trở về trước

Kết quả

2. Nhập dữ liệu sử dụng Scanner

Trong JDK 1.5, bạn có thể dùng java.util.Scanner để nhập dữ liệu vào từ bàn phím. Scanner hỗ trợ các phương thức hay dùng như:

  • nextInt(), nextLong() : nhập vào một số nguyên.
  • nextFloat(), nextDouble() : nhập vào số thực.
  • nextBoolean() : nhập vào true hoặc false.
  • next() : nhập vào một chuỗi các ký tự không chứa khoảng trắng.
  • nextLine() : nhập vào một chuỗi các ký tự (được phép có khoảng trắng).

Tuy nhiên, việc dùng các phương thức nhập số rất dễ gặp tình trạng trôi lệnh. Trôi lệnh và cách khắc phục như thế nào? Bạn có thể xem ở đây: Xử lý trôi lệnh khi dùng Scanner trong Java

Kết quả

3. Nhập dữ liệu sử dụng System.console

Trong JDK 1.6, bạn có thể sử dụng một cách đơn giản mà mạnh mẽ hơn. Đó là class java.io.Console.

Class Console cung cấp các phương thức để nhập vào chuỗi và cả password (readPassword() method). Nếu bạn develop một chương trình tương tác chủ yếu với console trên Linux, Windows thì java.io.Console là lựa chọn tốt nhất

Kết quả

Cách nhập dữ liệu từ bàn phím (đọc dữ liệu từ console) trong Java

Chạy thử chương trình nhập dữ liệu từ Console sử dụng System.console()

Note

Trong ví dụ sử dụng System.console(), bạn không thể chạy chương trình trên các IDE như Eclipse mà chỉ có thể chạy trên Terminal (Linux), Command Prompt (Windows).

Cách chạy chương trình sử dụng System.console():

Nếu bạn dùng Eclipse, hãy nhấn Ctrl + F11 hoặc Run để chương trình build và chạy, bạn sẽ nhìn thấy lỗi. Tuy nhiên, mục đích chạy ở đây là để Eclipse build class cho chúng ta, sau khi build xong, bạn vào thư mục “bin” của Project, mở Terminal hoặc CMD tại đó, và cuối cùng gõ lệnh: java com.ngockhuong.ReadConsole (với com.ngockhuong là package, ReadConsole: tên public class)

Tham khảo

  1. JavaDoc – java.io.Console
  2. JavaDoc – java.util.Scanner
  3. Why do we use console class

Bình luận Facebook

Bình luận

Hãy là người đầu tiên bình luận bạn nhé :)

Thông báo khi có
avatar
wpDiscuz
Lập trình Android với Kotlin: Ứng dụng máy tính đơn giản
Tạo project ứng dụng HelloWorld với Kotlin trên Android Studio
Tài liệu, giáo trình học Android, Web với ngôn ngữ lập trình Kotlin
Kotlin trở thành ngôn ngữ chính thức để lập trình Android
Bạn hay gặp lỗi với Tomcat ServerXem cách fix
+