ํด๋ž˜์Šค4 ๋ฌธ์ œ ํ’€๊ธฐ (ํ•™์ƒ๊ด€๋ฆฌํ”„๋กœ๊ทธ๋žจ ๋งŒ๋“ค๊ธฐ)

2023. 1. 30. 17:14ใ†java

package class4;

public class Student {
    private String name;
    private int age;
    private String grade;
    private String tell;

    public Student(String name, int age, String tell, String grade){
        this.name = name;
        this.age = age;
        this.tell = tell;
        this.grade = grade;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getGrade() {
        return grade;
    }

    public void setGrade(String grade) {
        this.grade = grade;
    }

    public String getTell() {
        return tell;
    }

    public void setTell(String tell) {
        this.tell = tell;
    }
    //ํ•™์ƒ์˜ ๋ชจ๋“  ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฉ”์†Œ๋“œ
    //์ด๋ฆ„ : ์žฅ๊ธธ๋™, ๋‚˜์ด : 30, ์—ฐ๋ฝ์ฒ˜ : 010-0000-0000, ํ•™์  : B
    public void printInfo(){
        System.out.println("์ด๋ฆ„ : " + name + ", ๋‚˜์ด : " + age + ", ์—ฐ๋ฝ์ฒ˜ : " + tell + ", ํ•™์  : " + grade);
    }
}

-

package class4;

import java.util.Scanner;

public class StudentManage {
    Scanner sc; //์„ ์–ธ ๋จผ์ € (์ข‹์€ ์ฝ”๋“œ)
    Student[] students;// ๋ฐฐ์—ด ์„ ์–ธ
    int index;

    public StudentManage(){
        sc = new Scanner(System.in); //์ƒ์„ฑ์ž์— ์Šค์บ๋„ˆ ์ดˆ๊ธฐํ™”
        students = new Student[3]; //ํ•™์ƒ๋“ค์˜ ์ •๋ณด ์ €์žฅ๋  ๊ณต๊ฐ„ ๋งŒ๋“ฆ > ๋“ฑ๋ก๋œ ํ•™์ƒ์˜ ์ˆ˜ ์•„๋‹˜!!
        index = 0; //์ƒ์„ฑํ•œ stu ๊ฐ์ฒด์˜ ๋ฐฐ์—ด ์ˆœ์„œ ๋ณ€์ˆ˜
    }

    //ํ•™์ƒ๋“ฑ๋ก
    public void regStudent(){
        //ํ•™์ƒ์ด 3๋ช…์„ ์ดˆ๊ณผํ•˜๋ฉด ๋“ฑ๋ก ๊ธˆ์ง€!
        if(index < 3){
            System.out.println();
            System.out.println("ํ•™์ƒ ๋“ฑ๋ก์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํ•™์ƒ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.");
            System.out.print("์ด๋ฆ„ : ");
            String name = sc.next();
            System.out.print("๋‚˜์ด : ");
            int age = sc.nextInt();
            System.out.print("์—ฐ๋ฝ์ฒ˜ : ");
            String tell = sc.next();
            System.out.print("ํ•™์  : ");
            String grade = sc.next();

            //์ž…๋ ฅ๋ฐ›์€ ์ •๋ณด๋ฅผ ๊ฐ€์ง„ ํ•™์ƒ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ >> ์–ด๋”˜๊ฐ€์— ์ €์žฅ์‹œ์ผœ์•ผ ํ•จ > ๋ฐฐ์—ด
            Student stu = new Student(name, age, tell, grade);
            //์ƒ์„ฑํ•œ ๊ฐ์ฒด๋ฅผ ๋ฐฐ์—ด์— ์ €์žฅ
            students[index] = stu;  //๊ฒฐ๋ก ์ ์œผ๋กœ index =  ๋“ฑ๋ก๋œ ํ•™์ƒ์˜ ์ˆ˜
            index++; //๊ธธ์ด๊ฐ€ 3์ธ ๋ฐฐ์—ด > ํ•™์ƒ 3๋ช… ๋“ฑ๋ก์ด ๋๋‚˜๋ฉด ์˜ค๋ฅ˜๋‚˜๊ฒŒ ์„ค์ •ํ•ด์•ผ ํ•จ.

        } else {
            System.out.println("๋” ์ด์ƒ ๋“ฑ๋ก์ด ๋ถˆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.");
        }

    }
    //ํ•™์ƒ์ •๋ณด๋ณ€๊ฒฝ(์—ฐ๋ฝ์ฒ˜)
    public void setStuInfo(){
        boolean flag2 = true;
        while (flag2){
            System.out.println("ํ•™์ƒ์˜ ์—ฐ๋ฝ์ฒ˜๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.");
            System.out.print("๋ณ€๊ฒฝ ํ•™์ƒ : ");
            String inputname = sc.next();
            for(int i = 0; i < index ; i++) {
                if(students[i].getName().equals(inputname)){
                    System.out.print("์—ฐ๋ฝ์ฒ˜ : ");
                    String tell = sc.next();
                    System.out.println("๋ณ€๊ฒฝ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
                    flag2 = false;
                    break;
                }
            }
            if(flag2) {
                System.out.println("ํ•ด๋‹นํ•˜๋Š” ํ•™์ƒ์ด ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์ž…๋ ฅํ•˜์„ธ์š”.");
            }
        }
    }

    //ํ•™์ƒ์ •๋ณด์ถœ๋ ฅ
    public void showStuInfo(){
        boolean flag = true;
        while (flag) {
            System.out.print("์ •๋ณด๋ฅผ ์—ด๋žŒํ•  ํ•™์ƒ : ");
            String inPutName = sc.next();

            for(int i = 0 ; i < index ; i++) {
                if(students[i].getName().equals(inPutName)){
                    System.out.println();
                    System.out.println("์š”์ฒญํ•˜์‹  ํ•™์ƒ์˜ ์ •๋ณด์ž…๋‹ˆ๋‹ค.");
                    students[i].printInfo();
                    flag = false; //ํ•™์ƒ ์ฐพ์œผ๋ฉด ๋ฌดํ•œ๋ฃจํ”„ ๋ฉˆ์ถ”๊ฒŒ ๋ณ€์ˆ˜ flag ์‚ฌ์šฉํ•จ.
                    break;
                    //break๋ฅผ ๊ฐ์‹ธ๊ณ  ์žˆ๋Š” for๋ฌธ(๋ฐ˜๋ณต๋ฌธ)์„ ๋น ์ ธ๋‚˜์˜ด > while๋ฌธ์€ ์‹คํ–‰ ๋จ.(๋ฌดํ•œ๋ฃจํ”„)
                }
            }
            if(flag) { //falg๊ฐ€ true์ธ ๊ฒฝ์šฐ์—๋งŒ (ํ•™์ƒ์„ ๋ชป ์ฐพ์€ ๊ฒฝ์šฐ)
                System.out.println("ํ•ด๋‹นํ•˜๋Š” ํ•™์ƒ์ด ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์ž…๋ ฅํ•˜์„ธ์š”."); //for๋ฌธ ๋ฐ–์—
            }
        }
    }


    //๋ชจ๋“  ํ•™์ƒ์ •๋ณด์ถœ๋ ฅ
    public void showAllInfo(){
        if(index == 0 ){
            System.out.println("ํ˜„์žฌ ๋“ฑ๋ก๋œ ํ•™์ƒ์ด ์—†์Šต๋‹ˆ๋‹ค.");
        }
        else {
            System.out.println("๋ชจ๋“  ํ•™์ƒ์˜ ์ •๋ณด์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ ์ด ํ•™์ƒ ์ˆ˜๋Š” " + index + "๋ช… ์ž…๋‹ˆ๋‹ค.");

            for(int i = 0; i < index ; i++){
                students[i].printInfo();
            }
        }
    }
}

-

package class4;

import java.util.Scanner;

public class StudentTest {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        StudentManage sm = new StudentManage(); //๋ฉ”์†Œ๋“œ ์‹คํ–‰์„ ์œ„ํ•ด ๊ฐ์ฒด ์ƒ์„ฑ

        System.out.println("ํ•™์ƒ๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.");

        while (true) {
            System.out.print("1)ํ•™์ƒ๋“ฑ๋ก 2)ํ•™์ƒ์ •๋ณด๋ณ€๊ฒฝ(์—ฐ๋ฝ์ฒ˜) 3)ํ•™์ƒ์ •๋ณด์ถœ๋ ฅ 4)๋ชจ๋“ ํ•™์ƒ์ •๋ณด์ถœ๋ ฅ 5)ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ : ");
            int option = sc.nextInt();

            switch(option){
                case 1 :
                    sm.regStudent();

                    break;
                case 2 :
                    sm.setStuInfo();
                    break;
                case 3 :
                    sm.showStuInfo();
                    break;
                case 4 :
                    sm.showAllInfo();
                    break;
                case 5 :
                    System.out.println("ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.");
                    System.exit(0); //๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ 0์ด๋ฉด ์ •์ƒ์ข…๋ฃŒ ๋จ.

            }
        }
    }
}