20 Commits

Author SHA1 Message Date
s-sakiyama
856eb9888a Merge remote-tracking branch 'origin/main' into s-sakiyama 2026-09-16 12:39:57 +09:00
s-sakiyama
8fbfa99047 9段階目(何度でも検索できるようにしよう) 2026-09-15 16:06:53 +09:00
s-sakiyama
1c4b834578 8段階目(社員をID検索してみよう) 2026-09-15 15:43:55 +09:00
s-sakiyama
b8aa7238f6 7段階目(IDが一致するか調べるメソッドを作ろう) 2026-09-15 15:06:13 +09:00
s-sakiyama
d88468306f 9段階目(チェックをもう1つの項目にも広げ、コンストラクタと統一しよう) 2026-09-15 14:44:43 +09:00
s-sakiyama
968c5094a4 8段階目(セッターに簡単なチェックを入れてみよう) 2026-09-15 14:24:20 +09:00
s-sakiyama
3b6b23c883 7段階目(staticで社員データの件数を数えよう) 2026-09-15 14:03:03 +09:00
s-sakiyama
f143cf7ec2 6段階目(toStringをオーバーライドしよう) 2026-09-15 13:55:35 +09:00
s-sakiyama
b58fcecaa2 5段階目(EmployeeDataにコンストラクタを作ろう) 2026-09-15 13:34:30 +09:00
s-sakiyama
d98145e598 4段階目(EmployeeDataをカプセル化しよう) 2026-09-15 13:25:46 +09:00
s-sakiyama
3d026db061 3段階目(Studentクラスにコンストラクタとstaticメンバを追加しよう) 2026-09-15 13:08:33 +09:00
s-sakiyama
38620e220f 2段階目(Itemクラスをカプセル化し、toStringをオーバーライドしよう) 2026-09-15 13:02:03 +09:00
s-sakiyama
d4b07b24bf 1段階目(Bookクラスにコンストラクタを作ろう) 2026-09-15 13:01:42 +09:00
s-sakiyama
066af8799d Merge remote-tracking branch 'origin/main' into s-sakiyama 2026-09-15 12:37:00 +09:00
s-sakiyama
27685ac25f 6段階目(複数の社員をまとめて表示してみよう) 2026-09-14 16:50:07 +09:00
s-sakiyama
3e82879f22 4段階目(EmployeeDataクラスの型を作ろう) 2026-09-14 16:37:11 +09:00
s-sakiyama
769fb977ca 3段階目(複数のインスタンスを扱ってみよう) 2026-09-14 16:32:27 +09:00
s-sakiyama
04da447bfe 2段階目(自分でクラスを宣言してみよう) 2026-09-14 16:32:12 +09:00
s-sakiyama
25802b8380 1段階目(用意されたクラスを使ってみよう) 2026-09-14 16:31:51 +09:00
s-sakiyama
be15630c5b 1段階目(用意されたクラスを使ってみよう) 2026-09-14 16:31:32 +09:00
8 changed files with 376 additions and 0 deletions

View File

@@ -3,6 +3,26 @@ public class BasicCheck1 {
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
Book book = new Book();
book.title = "吾輩は猫である";
book.author = "夏目漱石";
book.price = 800;
System.out.println(book.title);
System.out.println(book.author);
System.out.println(book.price);
System.out.println();
//9/15段階1
Book book1 = new Book();
System.out.println(book1.title);
System.out.println(book1.author);
System.out.println(book1.price);
Book book2 = new Book("銀河鉄道の夜", "宮沢賢治", 500);
System.out.println(book2.title);
System.out.println(book2.author);
System.out.println(book2.price);
}

View File

@@ -0,0 +1,15 @@
public class BasicCheck2 {
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
Student student1 = new Student(1, "鈴木一郎");
Student student2 = new Student(2, "田中花子");
Student student3 = new Student(3, "佐藤次郎");
student1.printProfile();
student2.printProfile();
student3.printProfile();
System.out.println("現在の生徒数:" + Student.getStudentCount() + "人");
}
}

View File

@@ -0,0 +1,26 @@
public class BasicCheck3 {
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
Item[] items = new Item[3];
for (int i = 0; i < items.length; i++) {
items[i] = new Item();
}
items[0].setName("ノート");
items[0].setPrice(120);
items[0].setStock(50);
items[1].setName("消しゴム");
items[1].setPrice(80);
items[1].setStock(30);
items[2].setName("鉛筆");
items[2].setPrice(60);
items[2].setStock(100);
for (Item i : items) {
i.sell(5);
System.out.println(i);
}
}
}

View File

@@ -1,4 +1,20 @@
public class Book {
String title;
String author;
int price;
//コンストラクタ
public Book() {
title = "タイトル未設定";
author = "著者未設定";
price = 0;
}
//引数ありコンストラクタ
public Book(String title, String author, int price) {
this.title = title;
this.author = author;
this.price = price;
}
}

View File

@@ -0,0 +1,115 @@
public class EmployeeData {
private String idEmployee;
private String nmEmployee;
private String knEmployee;
private String mailAddress;
private String password;
private String idDepartment;
private static int empCount = 0;
static final String COMPANY_NAME = "Rhizome";
//コンストラクタ
public EmployeeData() {
empCount++;
}
//引数ありコンストラクタ
public EmployeeData(String idEmployee, String nmEmployee, String knEmployee,
String mailAddress, String password, String idDepartment) {
this.setIdEmployee(idEmployee);
this.setNmEmployee(nmEmployee);
this.setKnEmployee(knEmployee);
this.setMailAddress(mailAddress);
this.setPassword(password);
this.setIdDepartment(idDepartment);
empCount++;
}
@Override
public String toString() {
return this.idEmployee + "\t" + this.nmEmployee
+ "\t" + this.knEmployee + "\t" + this.mailAddress
+ "\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;
}
public void setIdEmployee(String idEmployee) {
if (!check(idEmployee, "社員ID"))
return;
this.idEmployee = idEmployee;
}
public String getNmEmployee() {
return nmEmployee;
}
public void setNmEmployee(String nmEmployee) {
if (!check(nmEmployee, "社員名"))
return;
this.nmEmployee = nmEmployee;
}
public String getKnEmployee() {
return knEmployee;
}
public void setKnEmployee(String knEmployee) {
this.knEmployee = knEmployee;
}
public String getMailAddress() {
return mailAddress;
}
public void setMailAddress(String mailAddress) {
this.mailAddress = mailAddress;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getIdDepartment() {
return idDepartment;
}
public void setIdDepartment(String idDepartment) {
this.idDepartment = idDepartment;
}
public static int getEmpCount() {
return empCount;
}
private boolean check(String str, String stringName) {
if (str == null || str.strip().length() == 0) {
System.out.println(stringName + "が空のため設定できませんでした");
return false;
}
return true;
}
}

43
em-oop/src/Item.java Normal file
View File

@@ -0,0 +1,43 @@
public class Item {
private String name;
private int price;
private int stock;
void sell(int amount) {
this.setStock(this.getStock() - amount);
}
@Override
public String toString() {
return this.getName() + " " + this.getPrice() + "円(残り" + this.getStock() + "個)";
}
int totalPrice() {
return this.price * this.stock;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public int getStock() {
return stock;
}
public void setStock(int stock) {
this.stock = stock;
}
}

121
em-oop/src/Main.java Normal file
View File

@@ -0,0 +1,121 @@
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("会社名:" + EmployeeData.COMPANY_NAME);
// EmployeeData employee = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ",
// "yamada@hoge.jp", "aaa", "10");
// System.out.println(employee);
//
// System.out.println();
EmployeeData[] employees = new EmployeeData[5];
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");
for (EmployeeData e : employees) {
System.out.println(e);
;
}
System.out.println("現在の社員のデータ件数:" + EmployeeData.getEmpCount() + "件");
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);
System.out.println();
EmployeeData 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)");
System.out.print(">>>>");
String findId = scanner.nextLine();
if (findId.equals("0")) {
System.out.println("システムを終了します");
return;
}
boolean matchFlag = false;
for (EmployeeData e : employees) {
if (e.isMatchId(findId)) {
System.out.println(e);
matchFlag = true;
break;
}
}
if (!matchFlag) {
System.out.println("該当する社員が見つかりませんでした");
}
System.out.println();
}
}
}

20
em-oop/src/Student.java Normal file
View File

@@ -0,0 +1,20 @@
public class Student {
int studentId;
String name;
static int studentCount = 0;
void printProfile() {
System.out.println("学籍番号:" + this.studentId + " 名前:" + this.name);
}
public Student(int studentId, String name) {
this.studentId = studentId;
this.name = name;
studentCount++;
}
public static int getStudentCount() {
return studentCount;
}
}