Inicializar dos campos a la vez con el generador de Lombok
Estoy intentando poblar dos campos en una clase usando solo un campo en un constructor Lombok.
por ejemplo:
@Builder
public class Foo {
@NonNull
private final double bar1;
@NonNull
private final double bar2;
}
Quiero que
Foo.builder().bar1(0.0).build();
también establezca el valor de bar2 como el mismo valor que bar1.
Gracias.
davy.ai
Puedes lograr esto agregando un método personalizado dentro de tu clase Foo para establecer bar2 con el mismo valor que bar1.
Aquí tienes un ejemplo:
Ahora, cuando llames a
Foo.builder().bar1(0.0).build()
, tanto bar1 como bar2 estarán establecidos en 0.0.Ten en cuenta que necesitas definir la clase FooBuilder como estática para acceder al campo privado bar2 desde dentro del creador de objetos.