인프런 커뮤니티 질문&답변

권정익님의 프로필 이미지

작성한 질문수

김영한의 실전 자바 - 중급 2편

섹션 7 . 문제와 퓨리1

해결된 질문

24.05.16 12:57 작성

·

124

0

Set<Integer> set = new TreeSet<>(List.of(30, 20, 20, 10, 10));

set에 값을 넣을 때, List는 전달 할 수 있다고 하셨는데,

List.of();를 사용하면 ()안에 값을 List에 넣는 거고,

List의 타입은 Set<Integer>를 보고 Integer로 타입추론을 하게되고,

List<Integer>이기 때문에 ()안에 들어간 int형 (30, 20, 20, 10, 10)은 오토박싱이 돼서

int -> Integer 타입으로 변경되서 List에 들어간다.

제가 이해한 게 맞나요??ㅠㅠ

답변 1

1

codesweaver님의 프로필 이미지

2024. 05. 16. 16:22

안녕하세요. 권정익님, 공식 서포터즈 코즈위버입니다.

TreeSet의 생성자에는 Collection 을 받는 생성자가 있습니다. 그래서 List.of() 로 생성한 Collection 도 파라미터로 사용할 수 있습니다.

그 외에는 이해하고 계신 내용이 맞습니다. int 값이 Integer 로 박싱 되어 Set 의 요소로 추가됩니다.

감사합니다.