Day5 -Example3 -map(수정중)

박경희·2023년 5월 26일
0

강의 복습 및 정리

목록 보기
11/28
import java.util.*;

public class Example3 {
    static Scanner sc;
    static Map<String, List<Person>> map = new HashMap<>();
    public static void main(String[] args) {
        sc = new Scanner(System.in);
        controller();

    }

    static void controller() {
        System.out.println("1. insert 2. find 3. findAll 4. Exit");
        String nextLine = sc.nextLine();

        int mode = Integer.parseInt(nextLine);
        selectMode(mode);
    }

    private static void selectMode(int mode) {
        if (mode == 1)insert();
        else if (mode == 2) find();
        else if (mode == 3) findAll();
        else if (mode == 4) return;
        else  controller();
    }

    static void insert() {
        String region = sc.nextLine();
        String name = sc.nextLine();
        String ageString = sc.nextLine();
        int age = Integer.parseInt(ageString);
        List<Person> orDefault = map.getOrDefault(region, new ArrayList<>());
        orDefault.add(new Person(name, age));
        map.put(region, orDefault);
        controller();

//        List<Person> orDefault = map.getOrDefault(region, new ArrayList<>());
    }


    static void find() {

    }
    static void findAll() {
        System.out.println(map);
        controller();
    }

}
class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

오늘은 map에 대해배웠다. 여러번 반복해서 설명을 듣고 만들어보니 어떤 형식으로 만들어야되는지는 이해됐지만 혼자 만들라고 하면 아직 어디서부터 해야할지는 모르겠다! 주말에 차근차근 다시 생각해보면서 만들어봐야겠다~!

0개의 댓글