Java 14일차 (컬렉션. ArrayList)

2022. 11. 29. 10:01코딩배움일지/JAVA

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class StudentList2 {
    public static void main(String[] args) {
        List<Hobby> hobbyList = Arrays.asList (new Hobby[] {
                new Hobby(1,"축구"),
                new Hobby(2,"농구"),
                new Hobby(3,"골프"),
                new Hobby(4,"음악감상")});

       // String[]names = new String []{"김준일","김준이","김준삼"};

        List<String> nameList = Arrays.asList(new String[]{ /*배열을 ArrayList로 변환 그것이 asList*/
                "김준일",
                "김준이",
                "김준삼"});

        for(Hobby h : hobbyList){
            System.out.println(h);
        }

        Object[] nameArray = nameList.toArray(); /*배열을 통으로 다운 캐스팅 하는 것이 아니다.*/

        System.out.println((String)nameArray[0]); /*안에서 해라.*/

       // nameList = Arrays.asList(names); /*이름을 넣으면 asList로 바꿔준다.*/

    }
}

 

 

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class StudentList2copy {
    public static void main(String[] args) {
        List<Hobby> hl = Arrays.asList (new Hobby[] {
                new Hobby(1,"축구"),
                new Hobby(2,"농구"),
                new Hobby(3,"골프"),
                new Hobby(4,"음악감상")});

        Student s1 = Student.builder()
                .studentId(20220001)
                .name("고동현")
                .age(21)
                .hobbyList(Arrays.asList(new Hobby[]{hl.get(0),hl.get(2)}))
                .build();

        Student s2 = Student.builder()
                .studentId(20220002)
                .name("강동욱")
                .age(22)
                .hobbyList(Arrays.asList(new Hobby[]{hl.get(1),hl.get(3)}))
                .build();

        Student s3 = Student.builder()
                .studentId(20220003)
                .name("정진호")
                .age(23)
                .hobbyList(Arrays.asList(new Hobby[]{hl.get(0),hl.get(3)}))
                .build();


        System.out.println(s1);

        List<Student> sl = new ArrayList<Student>(); /*인터페이스로 구현된 implements 클래스*/
        sl.add(s1);
        sl.add(s2);
        sl.add(s3);

        for(Student s : sl) {
            System.out.println("<학생정보>");
            System.out.println(s);
            System.out.println("<"+s.getName() + "학생취미>");
            for(Hobby h:s.getHobbyList()){
                System.out.println(h);
            }
            System.out.println();
        }
    }
}

 

Student(studentId=20220001, name=고동현, age=21, hobbyList=[Hobby(id=1, hobbyName=축구), Hobby(id=3, hobbyName=골프)])
<학생정보>
Student(studentId=20220001, name=고동현, age=21, hobbyList=[Hobby(id=1, hobbyName=축구), Hobby(id=3, hobbyName=골프)])
<고동현학생취미>
Hobby(id=1, hobbyName=축구)
Hobby(id=3, hobbyName=골프)

<학생정보>
Student(studentId=20220002, name=강동욱, age=22, hobbyList=[Hobby(id=2, hobbyName=농구), Hobby(id=4, hobbyName=음악감상)])
<강동욱학생취미>
Hobby(id=2, hobbyName=농구)
Hobby(id=4, hobbyName=음악감상)

<학생정보>
Student(studentId=20220003, name=정진호, age=23, hobbyList=[Hobby(id=1, hobbyName=축구), Hobby(id=4, hobbyName=음악감상)])
<정진호학생취미>
Hobby(id=1, hobbyName=축구)
Hobby(id=4, hobbyName=음악감상)


Process finished with exit code 0

 

'코딩배움일지 > JAVA' 카테고리의 다른 글

Java 14일차 4(Map)  (0) 2022.11.29
Java 14일차 3(set, addAll, List)  (0) 2022.11.29
Java 13일차 (컬렉션3)  (0) 2022.11.29
Java 13일차 (컬렉션2)  (0) 2022.11.28
Java 13일차 1(컬렉션)  (0) 2022.11.28