# ArrayList - 데이터 담기 <div class="embed-responsive embed-responsive-16by9"> <iframe src="https://www.youtube.com/embed/7-bU7S0BZhQ?start=460" frameborder="0" allowfullscreen></iframe> </div> ArrayList에 객체를 담기 위해서는, 생성 시 담기위한 객체의 타입(클래스 타입)을 명시해야 합니다. ``` // Employee 객체를 담기 위한 ArrayList 생성 ArrayList<Employee> list = new ArrayList<Employee>(); ``` 명시된 타입의 객체를 담는 메소드는 `add()`로서 아래와 같이 사용합니다. add() 를 통해 추가된 객체는 ArrayList 제일 뒤쪽에 위치하게 됩니다. ``` // Employee 객체 생성 Employee emp1 = new Employee(); Employee emp2 = new Employee(); Employee emp3 = new Employee(); // ArrayList에 담기 list.add(emp1); // list -> { emp1 } list.add(emp2); // list -> { emp1, emp2 } list.add(emp3); // list -> { emp1, emp2, emp3 } ``` 특정 인덱스의 값을 변경할 때는 set(int index, E element) 메소드를 사용합니다. ``` Employee emp4 = new Employee(); list.set(0, emp4); // list -> { emp4, emp2, emp3 } ``` 더 자세한 내용은 API 문서를 참조하세요. - https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html ## 문제 ArrayList에 Book 객체들을 담고, 이를 출력하려 한다. 출력 예와 같은 결과를 얻도록 코드를 완성하시오. ## 출력 예 ``` list.get(0) -> Book { name: 원피스, price: 4500 } list.get(1) -> Book { name: 나루토, price: 4000 } list.get(2) -> Book { name: 자바 프로그래밍, price: 24000 } ```
관련 강의로 이동

코드: java 1.8

import java.util.ArrayList; public class BookTest { public static void main(String[] args) { /* 1. Book을 담기 위한 ArrayList 객체를 만드시오. */ ArrayList<____> list = new ArrayList<____>(); /* 2. Book 객체를 생성하시오. */ Book onePiece = new Book("___", ___); Book naruto = new Book("___", ____); Book java = new Book("________", _____); /* 3. ArrayList 객체에 Book 객체들을 담으시오. */ list.add(________); // 원피스 객체 담기 list.add(______); // 나루토 객체 담기 list.add(____); // 자바 객체 담기 /* 4. 리스트에 담긴 모든 책 정보 출력 */ for (int i = 0; i < list.size(); i++) { Book book = list.get(i); System.out.printf("list.get(%d) -> %s\n", i, ____); } } } class Book { // 필드 private String title; private int price; // 생성자 public Book(String title, int price) { this.title = title; this.price = price; } // 메소드 public String toString() { return String.format("Book { name: %s, price: %d }", title, price); } }

입력

정답이 궁금하다면? 코드를 제출해보세요!