01/10/2018, 09:32

Hỏi về nhập xuất xử lí ngày tháng trong Java

Em đang học Java có bài tập như thế này.
Viết chương trình nhập n giáo viên. Mỗi giáo viên có họ tên, ngày sinh.
a) Hiển thị thông tin n giáo viên.
b) Hiển thị thông tin giáo viên nào có tuổi lớn nhất.
Em thắc mắc là các anh chị bình thường xử lí nhập xuất thuộc ngày sinh (ngày tháng) như thế nào ? Và cả phần try catch chuẩn nữa. Em đang bối rối không biết nên làm thế nào cho chuẩn. Bởi vì bình thường em thường xử bằng cách chia thành 3 biến kiểu int ngày, tháng, năm để xử lí, mỗi lần nhập xuất lại phải try catch 3 biến kiểu int này rất mệt. Rồi viết hàm xử lí validate ngày tháng nữa.
Cần lắm 1 bài mẫu của anh chị để code của em nó trong sáng hơn !!

Tynk Huynk viết 11:43 ngày 01/10/2018

Bạn cho người dùng nhập kiểu String theo format dd/MM/yyyy rồi dùng SimpleDateFormat để check

String dateString = "6/5/2017";
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
df.setLenient(false); // set false để kiểm tra tính hợp lệ của date. VD: tháng 2 phải có 28-29 ngày, năm có 12 tháng,....
try {
    df.parse(dateString); // parse dateString thành kiểu Date
}
catch (ParseException e) { // quăng lỗi nếu dateString ko hợp lệ
   System.out.println("Invalid date");
}
Chi Bảo viết 11:42 ngày 01/10/2018

df.setLenient

Cảm ơn anh nhiều. Em đã làm được rồi

Bài liên quan
0