# ArrayList - get()
해당 풀이 영상에선toString메소드를 쓰는데 호출하지 않고도 값이 반환되어 출력되는건
해당 메소드의 기능인건가요?
간략한 설명 부탁드립니다.
#### CODE <a class='btn btn-default' href='/codes/96399'>Link</a>
```
import java.util.ArrayList;
public class BookTest {
public static void main(String[] args) {
ArrayList<Book> list = new ArrayList<Book>();
Book onePiece = new Book("원피스", 4500);
Book naruto = new Book("나루토", 4000);
Book javapro = new Book("자바 프로그래밍", 24000);
list.add(onePiece);
list.add(naruto);
list.add(javapro);
for (int i = 0; i < list.size(); i++) {
Book book = list.get(i);
System.out.printf("list.get(%d) -> %s\n", i, book.str());
}
}
}
class Book {
private String title;
private int price;
public Book(String title, int price) {
this.title = title;
this.price = price;
}
public String str() {
return String.format("Book { name: %s, price: %d }", title, price);
}
}
```
#### INPUT
```
```
#### OUPUT
```
list.get(0) -> Book { name: 원피스, price: 4500 }
list.get(1) -> Book { name: 나루토, price: 4000 }
list.get(2) -> Book { name: 자바 프로그래밍, price: 24000 }
```
sehongpark님의 답변
네 맞습니다
레퍼런스 변수를 println으로 출력시
자동적으로 toString() 메소드가 호출됩니다
자세한 내용은
"자바 toString 생략" 정도로 구글링해보세요