9段階目(部署名から社員を検索する集計プログラムを作ろう)

This commit is contained in:
s-sakiyama
2026-09-16 16:48:57 +09:00
parent 0ac701ce98
commit ed98c7c338

View File

@@ -138,15 +138,42 @@ public class Main {
System.out.println(); System.out.println();
Scanner scanner = new Scanner(System.in); Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("検索したい部署名を入力してください(終了する場合は0)");
System.out.print(">>>>");
String searchDeptNm = scanner.nextLine();
String searchDeptId = "";
if (endChack(searchDeptNm))
break;
for (BaseData data : allData) {
if (data instanceof DepartmentData) {
if (((DepartmentData) data).getNmDepartment().equals(searchDeptNm)) {
searchDeptId = ((DepartmentData) data).getIdDepartment();
}
}
}
if (searchDeptId.equals("")) {
System.out.println("該当する部署が見つかりませんでした");
continue;
}
for (BaseData data : allData) {
if (data instanceof EmployeeData) {
if (((EmployeeData) data).getIdDepartment().equals(searchDeptId)) {
System.out.println(
((EmployeeData) data).getNmEmployee() + "\t" + ((EmployeeData) data).getMailAddress());
}
}
}
System.out.println();
}
while (true) { while (true) {
System.out.println("検索したい社員IDを入力してください(終了する場合は0)"); System.out.println("検索したい社員IDを入力してください(終了する場合は0)");
System.out.print(">>>>"); System.out.print(">>>>");
String findId = scanner.nextLine(); String findId = scanner.nextLine();
if (findId.equals("0")) { if (endChack(findId))
System.out.println("システムを終了します"); break;
return;
}
boolean matchFlag = false; boolean matchFlag = false;
for (BaseData e : employees) { for (BaseData e : employees) {
@@ -164,4 +191,12 @@ public class Main {
} }
static boolean endChack(String input) {
if (input.equals("0")) {
System.out.println("システムを終了します");
return true;
}
return false;
}
} }