Đây là toàn bộ code controller của mình
public class MainController {
Map<Integer, Object> staffList = new HashMap<Integer, Object>();
Set<Integer> keySet = staffList.keySet();
public void input(Scanner scanner) {
while (true) {
try {
int choose = InputVaildation.integerInput("Vui long chon 1 nhan vien can nhap:\n"
+ "1.Nhan vien quan ly\n"
+ "2.Nhan vien ban hang\n"
+ "3.Nhan vien van phong", scanner);
if (choose == 0) {
break;
}
switch (choose) {
case 1:
Manager manager = new Manager();
manager.inputManger(scanner);
staffList.put(manager.getId(), manager);
break;
case 2:
Sales sales = new Sales();
sales.inputSales(scanner);
staffList.put(sales.getId(), sales);
break;
case 3:
Officer officer = new Officer();
officer.inputOfficer(scanner);
staffList.put(officer.getId(), officer);
break;
default:
System.out.println("Chon nhan vien can nhap");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
public void output() {
staffList.forEach((key, value) -> System.out.println(value.toString()));
}
public void findStaffByName(Scanner scanner) {
System.out.println("Nhap ten can tim:");
String nameFound = scanner.nextLine();
Map<Integer,Object> staffListFound = new HashMap<Integer, Object>();
for(Integer key : staffList.keySet()) {
if(key.toString().equals(nameFound)){
staffListFound.put(key, staffList.get(key));
}
}
Iterator <Map.Entry<Integer, Object>> entries = staffListFound.entrySet().iterator();
while(entries.hasNext()){
System.out.println(entries.next().toString());
}
if(staffListFound.isEmpty()){
System.out.println("Khong co nhan vien nao cung ten");
}
}
Và đây là chạy demo của mình