16 Commits

12 changed files with 394 additions and 95 deletions

8
em-oop/src/BaseData.java Normal file
View File

@@ -0,0 +1,8 @@
public abstract class BaseData {
public abstract String toString();
public abstract String toCSV();
public abstract String getPrimaryKeyValue();
}

View File

@@ -0,0 +1,37 @@
public class DepartmentData extends BaseData {
private String idDepartment;
private String nmDepartment;
public String getIdDepartment() {
return idDepartment;
}
public void setIdDepartment(String idDepartment) {
this.idDepartment = idDepartment;
}
public String getNmDepartment() {
return nmDepartment;
}
public void setNmDepartment(String nmDepartment) {
this.nmDepartment = nmDepartment;
}
@Override
public String toString() {
return getIdDepartment() + "\t" + getNmDepartment();
}
@Override
public String toCSV() {
return getIdDepartment() + "," + getNmDepartment();
}
@Override
public String getPrimaryKeyValue() {
return getIdDepartment();
}
}

View File

@@ -1,5 +1,5 @@
public class EmployeeData {
public class EmployeeData extends BaseData {
private String idEmployee;
private String nmEmployee;
private String knEmployee;
@@ -10,6 +10,10 @@ public class EmployeeData {
static final String COMPANY_NAME = "Rhizome";
public void showInfo() {
System.out.println(this.idEmployee + "\t" + this.nmEmployee + "\t" + this.knEmployee + "\t" + this.mailAddress
+ "\t" + this.mailAddress + "\t" + this.password + "\t" + this.idDepartment);
}
@Override
public String toString() {
@@ -17,6 +21,22 @@ public class EmployeeData {
+ "\t" + getPassword() + "\t" + getIdDepartment();
}
@Override
public String toCSV() {
return getIdEmployee() + "," + getNmEmployee() + "," + getKnEmployee() + "," + getMailAddress() + ","
+ getPassword() + "," + getIdDepartment();
}
@Override
public String getPrimaryKeyValue() {
return idEmployee;
}
public boolean isMatchId(String id) {
return idEmployee.equals(id);
}
static int getEmpCount() {
return empCount;
}
@@ -30,25 +50,13 @@ public class EmployeeData {
public EmployeeData(String idEmployee, String nmEmployee, String knEmployee, String mailAddress, String password,
String idDepartment) {
nmEmployee=nmEmployee.strip();
int nmNum = nmEmployee.length();
if(nmNum==0) {
System.out.println("社員名が空のため設定できませんでした");
}
if(nmNum>0){
this.setIdEmployee(idEmployee);
this.setNmEmployee(nmEmployee);
this.setKnEmployee(knEmployee);
this.setMailAddress(mailAddress);
this.setPassword(password);
this.setIdDepartment(idDepartment);
empCount++;
}
this.setIdEmployee(idEmployee);
this.setNmEmployee(nmEmployee);
this.setKnEmployee(knEmployee);
this.setMailAddress(mailAddress);
this.setPassword(password);
this.setIdDepartment(idDepartment);
empCount++;
}
public String getIdEmployee() {
@@ -56,16 +64,29 @@ public class EmployeeData {
}
public void setIdEmployee(String idEmployee) {
idEmployee = idEmployee.strip();
int idNum = idEmployee.length();
this.idEmployee = idEmployee;
if (idNum == 0) {
System.out.println("社員IDが空のため設定できませんでした");
} else {
this.idEmployee = idEmployee;
}
}
public String getNmEmployee() {
return nmEmployee;
}
public void setNmEmployee(String nmEMployee) {
this.nmEmployee = nmEMployee;
public void setNmEmployee(String nmEmployee) {
nmEmployee = nmEmployee.strip();
int nmNum = nmEmployee.length();
if (nmNum == 0) {
System.out.println("社員名が空のため設定できませんでした");
} else {
this.nmEmployee = nmEmployee;
}
}
public String getKnEmployee() {
@@ -100,8 +121,4 @@ public class EmployeeData {
this.idDepartment = idDepartment;
}
}

View File

@@ -1,60 +1,198 @@
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
EmployeeData[] employee = new EmployeeData[5];
employee[0] = new EmployeeData("10000"," ","ヤマダタツヤ","yamada@hoge.jp","aaa","10");
employee[1] = new EmployeeData();
employee[2] = new EmployeeData();
employee[3] = new EmployeeData();
employee[4] = new EmployeeData();
// BaseData employee = new EmployeeData();
// BaseData[] employees = new BaseData[];
// BaseData[] allData = new BaseData();
ArrayList<BaseData> allData = new ArrayList<>();
allData.add(new EmployeeData("10000", "山田龍也", "ヤマダタツヤ", "yamada@hoge.jp", "aaa", "10"));
// allData[1] = new EmployeeData("10001", "高橋準", "タカハシジュン", "jtaka@hoge.jp", "bbb", "10");
// allData[2] = new EmployeeData("10002", "麻枝史明", "マエダフミアキ", "fmak@hoge.jp", "ccc", "11");
// allData[3] = new EmployeeData("10003", "丸戸章介", "マルトショウスケ", "marusyo@hoge.jp", "ddd", "12");
// allData[4] = new EmployeeData("10004", "三宅武", "ミヤケタケシ", "miya@hoge.jp", "eee", "13");
// allData[11] = new EmployeeData("10005", "丸井悠", "マルイハルカ", "haru@hoge.jp", "fff", "13");
// allData[12] = new EmployeeData("10006", "涼元香織", "スズモトカオリ", "suzumoto@hoge.jp", "ggg", "13");
// allData[13] = new EmployeeData("10007", "葉山稔", "ハヤマミノル", "mhayama@hoge.jp", "hhh", "14");
// allData[14] = new EmployeeData("10008", "川上朱里", "カワカミアカリ", "kawakami@hoge.jp", "iii", "14");
// allData[15] = new EmployeeData("10009", "杉井肇", "スギイハジメ", "sugi@hoge.jp", "jjj", "15");
//
// DepartmentData dept = new DepartmentData();
// dept.setIdDepartment("10");
// dept.setNmDepartment("役員");
// allData[5] = dept;
// dept = new DepartmentData();
// dept.setIdDepartment("11");
// dept.setNmDepartment("人事・総務部");
// dept = new DepartmentData();
// allData[6] = dept;
// dept.setIdDepartment("12");
// dept.setNmDepartment("経理部");
// allData[7] = dept;
// dept = new DepartmentData();
// dept.setIdDepartment("13");
// dept.setNmDepartment("システム開発事業部");
// allData[8] = dept;
// dept = new DepartmentData();
// dept.setIdDepartment("14");
// dept.setNmDepartment("教育事業部");
// allData[9] = dept;
// dept = new DepartmentData();
// dept.setIdDepartment("15");
// dept.setNmDepartment("営業企画部");
// allData[10] = dept;
// employee[0].setIdEmployee("10000");
// employee[0].setNmEmployee("山田龍也");
// employee[0].setKnEmployee("ヤマダタツヤ");
// employee[0].setMailAddress("yamada@hoge.jp");
// employee[0].setPassword("aaa");
// employee[0].setIdDepartment("10");
//
employee[1].setIdEmployee("10001");
employee[1].setNmEmployee("高橋準");
employee[1].setKnEmployee("タカハシジュン");
employee[1].setMailAddress("jtaka@hoge.jp");
employee[1].setPassword("bbb");
employee[1].setIdDepartment("10");
Scanner scanner = new Scanner(System.in);
employee[2].setIdEmployee("10002");
employee[2].setNmEmployee("麻枝史明");
employee[2].setKnEmployee("マエダフミアキ");
employee[2].setMailAddress("fmak@hoge.jp");
employee[2].setPassword("ccc");
employee[2].setIdDepartment("11");
while (true) {
System.out.println("1:検索 2:登録 3:更新 4:削除 0:終了");
String usertype = scanner.nextLine();
employee[3].setIdEmployee("10003");
employee[3].setNmEmployee("丸戸章介");
employee[3].setKnEmployee("マルトショウスケ");
employee[3].setMailAddress("marusyo@hoge.jp");
employee[3].setPassword("ddd");
employee[3].setIdDepartment("12");
//0:終了
if (usertype.equals("0")) {
break;
}
employee[4].setIdEmployee("10004");
employee[4].setNmEmployee("三宅武");
employee[4].setKnEmployee("ミヤケタケシ");
employee[4].setMailAddress("miya@hoge.jp");
employee[4].setPassword("eee");
employee[4].setIdDepartment("13");
//
//1:検索
if (usertype.equals("1")) {
System.out.println("1:全検索 2:条件検索 それ以外:戻る");
usertype = scanner.nextLine();
if (usertype.equals("1")) {
for (int i = 0; i < allData.size(); i++)
if (allData.get(i) instanceof EmployeeData) {
System.out.println(allData.get(i).toString());
}
} else if (usertype.equals("2")) {
System.out.println("IDを入力してください");
usertype = scanner.nextLine();
boolean result = false;
for (int i = 0; i < allData.size(); i++)
if (allData.get(i) instanceof EmployeeData) {
EmployeeData employee = (EmployeeData) allData.get(i);
if (employee.getIdEmployee().equals(usertype)) {
result = true;
System.out.println(employee.toString());
break;
}
}
if (result == false) {
System.out.println("入力された値で情報がみつかりませんでした");
}
} else {
continue;
}
}
//2:登録
if (usertype.equals("2")) {
System.out.println("社員IDを入力してください");
}
for(int i=0;i<5;i++) {
System.out.println(employee[i]);
}
}
}
System.out.println("現在の社員データ数"+EmployeeData.getEmpCount());
//Day3.9---所属部署から従業員のメアドを検索する
// DepartmentData dep = null;
// EmployeeData emp;
// String nmD = null;
//
// for (int i = 0; i < allData.length; i++) {
// if (allData[i] instanceof DepartmentData) {
// dep = (DepartmentData) allData[i];
// if (dep.getNmDepartment().equals("システム開発事業部")) {
// nmD = dep.getIdDepartment();
// }
// }
//
// }
//
// for (int i = 0; i < allData.length; i++) {
// if (allData[i] instanceof EmployeeData) {
// emp = (EmployeeData) allData[i];
// if (emp.getIdDepartment().equals(nmD)) {
// System.out.println(emp.getNmEmployee() + "\t" + emp.getMailAddress());
// }
//
// }
//
// }
System.out.println(EmployeeData.COMPANY_NAME);
// for (int i = 0; i < allData.length; i++) {
// if (allData[i] instanceof EmployeeData) {
// EmployeeData emp = (EmployeeData) allData[i];
// System.out.println(emp.getMailAddress());
// }
// }
// int emp=0;
// int dep=0;
// for(int i=0;i<allData.length;i++) {
// if(allData[i] instanceof EmployeeData) {
// emp++;
// }
// if(allData[i] instanceof DepartmentData) {
// dep++;
// }
// }
// System.out.println("社員データ:"+emp+"件");
// System.out.println("部署データ:"+dep+"件");
// 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");
// System.out.println(employees[0].toCSV());
// System.out.println(employees[0].getPrimaryKeyValue());
// Scanner sc = new Scanner(System.in);
// //
// for (int i = 0; i < employees.length; i++) {
// System.out.println("1:検索 2:登録 3:更新 4:削除 0:終了");
// String id = sc.nextLine();
// boolean result = false;
//
// if (id.equals("0")) {
// System.out.println("システムを終了します");
// break;
// }
// if (employees[i].getPrimaryKeyValue().equals(id)) {
// result = true;
// employees[i].toString();
//
// }
//
// if (result == false) {
// System.out.println("該当する社員が見つかりませんでした");
// }
//
// }
//
// for (int i = 0; i < 5; i++) {
// if (employee[i].getNmEmployee() == null) {
// continue;
// }
// System.out.println(employee[i]);
// }
//
//
//
// System.out.println("現在の社員データ数"+EmployeeData.getEmpCount());
//
// System.out.println(EmployeeData.COMPANY_NAME);
// System.out.println();
// System.out.println(employee.nmEmployee);
@@ -62,12 +200,3 @@ public class Main {
// System.out.println(employee.mailAddress);
// System.out.println(employee.password);
// System.out.println(employee.idDepartment);
}
}

View File

@@ -0,0 +1,22 @@
package day3_123;
public class Circle extends Shape {
private double radius;
public Circle(double radius) {
super("円");
this.radius=radius;
}
@Override
public double area() {
return Math.PI*radius*radius;
}
@Override
public void showInfo() {
super.showInfo();
System.out.println("(半径:"+this.radius+")");
}
}

View File

@@ -0,0 +1,10 @@
package day3_123;
public class Day3Check1 {
public static void main(String[] args) {
Circle circle=new Circle(2);
circle.showInfo();
}
}

View File

@@ -0,0 +1,15 @@
package day3_123;
public class Day3Check2 {
public static void main(String[] args) {
Rectangle rec = new Rectangle(3, 4);
rec.showInfo();
Greeting gre = new JapaneseGreeting();
System.out.println(gre.hello());
}
}

View File

@@ -0,0 +1,13 @@
package day3_123;
public class Day3Check3 {
public static void main(String[] args) {
Shape shape1 = new Circle(2);
shape1.showInfo();
Shape shape2 = new Rectangle(3,4);
shape2.showInfo();
}
}

View File

@@ -0,0 +1,6 @@
package day3_123;
public interface Greeting {
String hello();
}

View File

@@ -0,0 +1,9 @@
package day3_123;
public class JapaneseGreeting implements Greeting {
@Override
public String hello() {
return "こんにちは";
}
}

View File

@@ -0,0 +1,18 @@
package day3_123;
public class Rectangle extends Shape {
private double width;
private double height;
public Rectangle(double width,double height) {
super("四角形");
this.width=width;
this.height=height;
}
@Override
public double area() {
return width*height;
}
}

View File

@@ -0,0 +1,15 @@
package day3_123;
public abstract class Shape {
private String name;
public Shape(String name) {
this.name=name;
}
public abstract double area();
public void showInfo() {
System.out.println(this.name+"の面積は"+this.area()+"です");
}
}