Java Lombok | 컬렉션 유형에 추가 setter 메소드 선언 - @Singular

@Singular

@Builder 선언하고, 디폴드로 그대로 놓으면, 컬렉션 유형의 필드도 보통으로 덮어 쓰여져서 setter 메소드로 자동 생성된다. 추가 메소드로 자동 생성하고 싶다면 필드에 @Singular 어노테이션을 선언할 수 있다.

package com.devkuma.tutorial.lombok;

import lombok.Builder;
import lombok.Singular;
import lombok.ToString;

import java.util.Arrays;
import java.util.List;

@Builder
@ToString
public class SingularTutorial {

    private String string;
    private int number;
    @Singular("list")
    private List<String> list;

    public static void main(String[] args) {
        SingularTutorialBuilder builder = SingularTutorial.builder()
                .string("test")
                .number(100)
                .list("kimkc")
                .list("happykuma")
                .list(Arrays.asList("devkuma", "araikuma"));

        SingularTutorial tutorial = builder.build();

        System.out.println(tutorial);
    }

}

실행 결과:

SingularTutorial(string=test, number=100, list=[kimkc, happykuma, devkuma, araikuma])



최종 수정 : 2024-01-18