package lab1_lechinguyen;
import java.io.IOException;
public class InPutData {
public static void main(String[] args) throws IOException {
char secretChar, guessChar;
System.out.println("Nhập ký tự bí mật: ");
secretChar = (char)System.in.read();
do{
System.out.println("Đoán ký tự bí mật: ");
guessChar = (char)System.in.read();
if(guessChar == secretChar)
System.out.println("Bạn đoán chính xác!");
else
System.out.println("Bạn đoán sai rồi!");
} while(guessChar != secretChar);
}
}
Khi mình chạy chương trình này thì mình nhập dữ liệu một lần mà vòng lặp chạy hai lần, tức là có một lần không nhập mà vòng lặp vẫn chạy, mình nghĩ đây là do lần 2 thì biến sẽ nhận phím Enter trong vùng đệm nhưng mình không biết cách xử lý thế nào, mong mọi người chỉ giáo !
method này có đặc điểm là nếu chưa có dữ liệu nhập vào thì nó sẽ block thread hiện tại (ở ví dụ này là thread main) và đợi cho tới khi nào có dữ liệu nhập vào thì mới hết block 
----->
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?