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

성호님의 프로필 이미지

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

주문, 주문상품 엔티티 개발

order builder패턴 질문

22.06.01 13:08 작성

·

246

0

set를 빌더 패턴으로 바꿔봤는데 배열은 어떻게 빌더로하는지 궁금해서요ㅠㅠ
 
이러이렇게 하는게 맞는건지 아닌거같기도하고... 그리고 (...) 이거 궁금한데 뭐라고 검색해야나오나요?

답변 3

0

성호님의 프로필 이미지
성호
질문자

2022. 06. 01. 16:58

감사합니다 더 공부해보겠습니다

0

성호님의 프로필 이미지
성호
질문자

2022. 06. 01. 14:53

그럼 위에 같은 경우는 

Order order = Order.builder()

.member(member)

.delivery(delivery)

.orderItems(new OrderItem[] {orderItems)

.build();

이게 맞나요? 빨간줄이 뜨는데 

OMG님의 프로필 이미지

2022. 06. 01. 15:12

강의를 보셔서 아시겠지만,

Order는 OrderItem을 List로 관리합니다.

따라서, new OrderItem[] 형태가 아닌 아래와 같이 new ArrayList<>()처럼 List 타입을 사용해야합니다.

void test() {
Member member1 = new Member();
Member member2 = new Member();
List<Member> memberList = List.of(member1, member2);

Team team = Team.builder()
.members(new ArrayList<>(memberList))
.build();
}

0

OMG님의 프로필 이미지

2022. 06. 01. 13:29

안녕하세요. 성호님, 공식 서포터즈 OMG입니다.

인스턴스 생성 시 배열도 동일하게 타입에 맞는 인자를 전달하면 됩니다.

... 문법은 '자바 가변인자(varargs, variable arguments)'  입니다


감사합니다.

 
성호님의 프로필 이미지

작성한 질문수

질문하기