[Video] Chương trình quản lý sinh viên bằng HashMap - Java Advanced
Viết chương trình quản lý sinh viên sử dụng HashMap trong Java (Java Advanced). Cụ thể:
-
Tạo lớp
Studentvới các thuộc tính:rollNo,name,sex,age,email,address. Cần có constructor không đối số và constructor đầy đủ tham số. -
Tạo một
HashMap<String, Student>để quản lý danh sách sinh viên, dùngrollNolàm key. -
Xây dựng menu chương trình với các chức năng:
-
Nhập N sinh viên
-
In thông tin tất cả sinh viên
-
Tìm kiếm sinh viên theo
rollNovà hiển thị thông tin nếu có
-
Nội dung giải thích & code mẫu
1. Lớp Student – định nghĩa đối tượng sinh viên
Giải thích chi tiết:
-
Constructor không tham số để khởi tạo đối tượng rồi gán sau khi nhập thông tin.
-
Constructor đầy đủ để khởi tạo nhanh nếu có sẵn dữ liệu.
-
input()dùngScannerđể người dùng nhập từ console. -
display()để in thông tin ra màn hình. -
toString()để dễ in hoặc debug.
2. Sử dụng HashMap<String, Student> để quản lý sinh viên
Bạn sử dụng HashMap theo cú pháp:
Ở đây:
-
Key là
rollNo(String) – đảm bảo mỗi sinh viên có mã số duy nhất. -
Value là đối tượng
Studentchứa các thông tin chi tiết.
Ưu điểm dùng HashMap:
-
Truy xuất (lookup) theo
rollNorất nhanh (O(1) trung bình). -
Dễ thêm, sửa, xóa sinh viên.
-
Không cần duyệt toàn bộ để tìm, nếu biết
rollNo.
3. Xây dựng menu chương trình
Phần menu giúp người dùng thao tác dễ dàng với chương trình quản lý sinh viên. Dưới đây là code mẫu cho Main:
Giải thích phần menu:
-
case 1: Nhập N sinh viên, gọiinput()từng đối tượng và lưu vàostudentMapvớirollNolàm key. -
case 2: DuyệtstudentMap.values()để in ra thông tin tất cả sinh viên. -
case 3: DùngstudentMap.get(key)để tìm nhanh sinh viên theo mã (rollNo). -
case 4: Thoát chương trình. -
Xử lý
default: nếu người dùng nhập sai chức năng, nhắc chọn lại.