인프런 커뮤니티 질문&답변
List인터페이스를 sout 할때 질문입니다.
작성
·
270
퀴즈
61%나 틀려요. 한번 도전해보세요!
Iterable과 Iterator는 컬렉션 순회를 위해 함께 사용돼요. 각자의 역할은 무엇인가요?
Iterable: 데이터 저장소, Iterator: 데이터 접근
Iterable: 순회 가능 상태 부여, Iterator: 실제 순회 방법 제공
Iterable: 다음 요소 확인, Iterator: 요소 반환 후 이동
Iterable: 정렬 기준 정의, Iterator: 요소 검색
답변 1
1
저도 질문글 보니 궁금해서 디버깅하면서 뒤져봤네요.
결론적으로는 AbstractCollection 클래스의 의 toString 메서드를 사용하는게 맞습니다.
List<String> list = new LinkedList<>();
list.add("data1");
System.out.println("list = " + list);list를 문자열로 반환하기 위해서 String class의 valueOf 실행.
여기서 Object의 toString 메서드 실행.
toString 실행 시, 해당 Object의 오버라이딩 된 toString,
AbstractCollection.toString실행
이런 순서로 이뤄지는걸로 확인하였습니다.





