: Ben herhangi bir aktörleri belirtmeden, oluşturucu kullanarak yeni Movie
oluşturduğunuzda, ben Lombok benim listesi başlatmak için beklenebilirLombok @Builder başlatılıyor değil koleksiyonları
@Data
@Builder(toBuilder = true)
class Movie {
// Some other fields here.
private final List<Actor> actors;
}
Collections.emptyList()
. Ama bu olmazsa:
List<Actor> actors = Movie.builder().build().getActors();
System.out.println(actors); // Prints 'null'.
@Builder
açıklama belgelerinde, bu ben @Singular
için kod örneği bakmak gerekir Vanilya Java (https://projectlombok.org/features/Builder.html) için kod örneğinde hat 55 ve 56 üzerinden değerlendirilir (https://projectlombok.org/features/Singular-snippet.html). Burada Vanilla Java örneğindeki 112 satırında, listenin boş listeye başlatılması gerektiği anlaşılıyor.
@Singular
ile liste açıklama eğer gerçekten meydana geliyor:
@Data
@Builder(toBuilder = true)
class Movie {
// Some other fields here.
@Singular
private final List<Actor> actors;
}
List<Actor> actors = Movie.builder().build().getActors();
System.out.println(actors); // Prints '[]'.
bu Lombok bir hata mı, yoksa yanlış yapıyorum şey mi var? Belgelere göre, liste her iki durumda da boş listeye başlatılmış gibi görünüyor (çünkü @Builder
belgesi @Singular
belgesine başvuruyor).
Bu arada Lombok sürüm 1.16.6 kullanıyorum. – marstran