5段階目(Mainでポリモーフィズムを使おう)
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
|
||||
public abstract class BaseData {
|
||||
public abstract String toString();
|
||||
|
||||
|
||||
@@ -35,19 +35,6 @@ public class EmployeeData extends BaseData {
|
||||
+ "\t" + this.password + "\t" + this.idDepartment;
|
||||
}
|
||||
|
||||
public boolean isMatchId(String id) {
|
||||
return getIdEmployee().equals(id);
|
||||
}
|
||||
|
||||
public static boolean isMatchId(EmployeeData[] employees, String id) {
|
||||
for (EmployeeData e : employees) {
|
||||
if (e.isMatchId(id))
|
||||
return true;
|
||||
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public String getIdEmployee() {
|
||||
return idEmployee;
|
||||
}
|
||||
@@ -122,5 +109,4 @@ public class EmployeeData extends BaseData {
|
||||
public String getPrimaryKeyValue() {
|
||||
return this.idEmployee;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,54 +4,66 @@ public class Main {
|
||||
public static void main(String[] args) {
|
||||
System.out.println("会社名:" + EmployeeData.COMPANY_NAME);
|
||||
|
||||
EmployeeData employee = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ",
|
||||
BaseData employee = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ",
|
||||
"yamada@hoge.jp", "aaa", "10");
|
||||
System.out.println(employee.toCSV());
|
||||
System.out.println(employee.getPrimaryKeyValue());
|
||||
|
||||
System.out.println();
|
||||
|
||||
EmployeeData[] employees = new EmployeeData[5];
|
||||
for (int i = 0; i < employees.length; i++) {
|
||||
employees[i] = new EmployeeData();
|
||||
}
|
||||
BaseData[] employees = new BaseData[5];
|
||||
|
||||
employees[0].setIdEmployee("10000");
|
||||
employees[0].setNmEmployee("山田龍也");
|
||||
employees[0].setKnEmployee("ヤマダタツヤ");
|
||||
employees[0].setMailAddress("yamada@hoge.jp");
|
||||
employees[0].setPassword("aaa");
|
||||
employees[0].setIdDepartment("10");
|
||||
//setterがBaseData.javaにはないためコンストラクタで代入
|
||||
// for (int i = 0; i < employees.length; i++) {
|
||||
// employees[i] = new EmployeeData();
|
||||
// }
|
||||
//
|
||||
// employees[0].setIdEmployee("10000");
|
||||
// employees[0].setNmEmployee("山田龍也");
|
||||
// employees[0].setKnEmployee("ヤマダタツヤ");
|
||||
// employees[0].setMailAddress("yamada@hoge.jp");
|
||||
// employees[0].setPassword("aaa");
|
||||
// employees[0].setIdDepartment("10");
|
||||
//
|
||||
// employees[1].setIdEmployee("10001");
|
||||
// employees[1].setNmEmployee("高橋準\t");
|
||||
// employees[1].setKnEmployee("タカハシジュン");
|
||||
// employees[1].setMailAddress("jtaka@hoge.jp");
|
||||
// employees[1].setPassword("bbb");
|
||||
// employees[1].setIdDepartment("10");
|
||||
//
|
||||
// employees[2].setIdEmployee("10002");
|
||||
// employees[2].setNmEmployee("麻枝史明");
|
||||
// employees[2].setKnEmployee("マエダフミアキ");
|
||||
// employees[2].setMailAddress("fmak@hoge.jp");
|
||||
// employees[2].setPassword("ccc");
|
||||
// employees[2].setIdDepartment("11");
|
||||
//
|
||||
// employees[3].setIdEmployee("10003");
|
||||
// employees[3].setNmEmployee("丸戸章介");
|
||||
// employees[3].setKnEmployee("マルトショウスケ");
|
||||
// employees[3].setMailAddress("marusyo@hoge.jp");
|
||||
// employees[3].setPassword("ddd");
|
||||
// employees[3].setIdDepartment("12");
|
||||
//
|
||||
// employees[4].setIdEmployee("10004");
|
||||
// employees[4].setNmEmployee("三宅武\t");
|
||||
// employees[4].setKnEmployee("ミヤケタケシ");
|
||||
// employees[4].setMailAddress("miya@hoge.jp");
|
||||
// employees[4].setPassword("eee");
|
||||
// employees[4].setIdDepartment("13");
|
||||
employees[0] = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ",
|
||||
"yamada@hoge.jp", "aaa", "10");
|
||||
employees[1] = new EmployeeData("10001", "高橋準", "タカハシジュン",
|
||||
"jtaka@hoge.jp", "bbb", "10");
|
||||
employees[2] = new EmployeeData("10002", "麻枝史明", "マエダフミアキ",
|
||||
"fmak@hoge.jp", "ccc", "11");
|
||||
employees[3] = new EmployeeData("10003", "丸戸章介", "マルトショウスケ",
|
||||
"marusyo@hoge.jp", "ddd", "12");
|
||||
employees[4] = new EmployeeData("10004", "三宅武", "ミヤケタケシ",
|
||||
"miya@hoge.jp", "eee", "13");
|
||||
|
||||
employees[1].setIdEmployee("10001");
|
||||
employees[1].setNmEmployee("高橋準\t");
|
||||
employees[1].setKnEmployee("タカハシジュン");
|
||||
employees[1].setMailAddress("jtaka@hoge.jp");
|
||||
employees[1].setPassword("bbb");
|
||||
employees[1].setIdDepartment("10");
|
||||
|
||||
employees[2].setIdEmployee("10002");
|
||||
employees[2].setNmEmployee("麻枝史明");
|
||||
employees[2].setKnEmployee("マエダフミアキ");
|
||||
employees[2].setMailAddress("fmak@hoge.jp");
|
||||
employees[2].setPassword("ccc");
|
||||
employees[2].setIdDepartment("11");
|
||||
|
||||
employees[3].setIdEmployee("10003");
|
||||
employees[3].setNmEmployee("丸戸章介");
|
||||
employees[3].setKnEmployee("マルトショウスケ");
|
||||
employees[3].setMailAddress("marusyo@hoge.jp");
|
||||
employees[3].setPassword("ddd");
|
||||
employees[3].setIdDepartment("12");
|
||||
|
||||
employees[4].setIdEmployee("10004");
|
||||
employees[4].setNmEmployee("三宅武\t");
|
||||
employees[4].setKnEmployee("ミヤケタケシ");
|
||||
employees[4].setMailAddress("miya@hoge.jp");
|
||||
employees[4].setPassword("eee");
|
||||
employees[4].setIdDepartment("13");
|
||||
|
||||
for (EmployeeData e : employees) {
|
||||
for (BaseData e : employees) {
|
||||
System.out.println(e);
|
||||
;
|
||||
}
|
||||
@@ -60,38 +72,20 @@ public class Main {
|
||||
System.out.println();
|
||||
|
||||
//nullおよび前後の空白を取り除いた結果が空文字チェック
|
||||
EmployeeData emp = new EmployeeData("10000", "デフォルト", "ヤマダタツヤ", "yamada@hoge.jp", "aaa", "10");
|
||||
System.out.println(emp);
|
||||
emp.setNmEmployee(null);
|
||||
System.out.println(emp);
|
||||
emp.setNmEmployee(" ");
|
||||
System.out.println(emp);
|
||||
// BaseData emp = new EmployeeData("10000", "デフォルト", "ヤマダタツヤ", "yamada@hoge.jp", "aaa", "10");
|
||||
// System.out.println(emp);
|
||||
// (EmployeeData)emp.setNmEmployee(null);
|
||||
// System.out.println(emp);
|
||||
// emp.setNmEmployee(" ");
|
||||
// System.out.println(emp);
|
||||
|
||||
System.out.println();
|
||||
|
||||
EmployeeData emptyEmployee = new EmployeeData("", "", "", "", "", "");
|
||||
BaseData emptyEmployee = new EmployeeData("", "", "", "", "", "");
|
||||
System.out.println(emptyEmployee);
|
||||
|
||||
System.out.println();
|
||||
|
||||
//IDが一致するか
|
||||
boolean matchIdBool = false;
|
||||
System.out.println("10002 を検索します");
|
||||
for (EmployeeData e : employees) {
|
||||
matchIdBool = e.isMatchId("10002");
|
||||
if (matchIdBool)
|
||||
break;
|
||||
}
|
||||
System.out.println(matchIdBool);
|
||||
|
||||
System.out.println("99999 を検索します");
|
||||
System.out.println(EmployeeData.isMatchId(employees, "99999"));
|
||||
|
||||
System.out.println("10003 を検索します");
|
||||
System.out.println(EmployeeData.isMatchId(employees, "10003"));
|
||||
|
||||
System.out.println();
|
||||
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
while (true) {
|
||||
System.out.println("検索したい社員IDを入力してください(終了する場合は0)");
|
||||
@@ -104,8 +98,8 @@ public class Main {
|
||||
|
||||
boolean matchFlag = false;
|
||||
|
||||
for (EmployeeData e : employees) {
|
||||
if (e.isMatchId(findId)) {
|
||||
for (BaseData e : employees) {
|
||||
if (e.getPrimaryKeyValue().equals(findId)) {
|
||||
System.out.println(e);
|
||||
matchFlag = true;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user