Lombok-@Singular 和 @Builder 组合

@Builder让类支持链构造,而@Singular让集合类型字段可以更方便的维护。

@Singular注解可以用在集合类型的字段上,它会生成两个方法,一个是添加单个元素的方法,一个是添加整个集合的方法。这两个方法可以和 @Builder 生成的其他方法一起链式调用。

看实例:

复制代码
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class User {

    private String name;
    private Integer age;
    @Singular
    private List<String> addresses;
}

User user = User.builder()
	.name("练习时长两年半")
	.age(28)
	.addresses(Collections.singleton("篮球")) // 添加单个元素
	.addresses(Collections.singleton("唱歌")) // 添加单个元素
	.addresses(Arrays.asList("跳舞", "其他")) // 添加整个集合
	.build(); // 构造 User 对象

尽管 Lombok 提供了许多方便的功能,但过度使用不当使用可能会导致代码难以理解和维护。

相关推荐
竞赛考级题库几秒前
202606 青少年等级考试C/C++真题一级 建议答题时长:60min
java·c语言·c++
大树912 分钟前
把 Java 项目从手动 SCP 升级到 Gitee Go 自动部署:一份踩坑实录
java·golang·gitee
2601_967019513 分钟前
服务器SSL配置要点,规避HTTPS访问异常风险
服务器·https·ssl
paopaokaka_luck3 分钟前
非遗文物数字化系统(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
前端·javascript·vue.js·人工智能·数据分析·echarts
YUJIANYUE6 分钟前
AspFox-类NetBox的ASP+Access迷你单文件服务器V202609
运维·服务器
佳&弥7 分钟前
后渗透痕迹清理
服务器·windows·web安全·网络安全
乘风gg7 分钟前
AI Coding 提效 2 倍是真的吗?到底怎么衡量效果
前端·ai编程·claude
用户921080262868 分钟前
从对象到原型链:理解 this、构造函数和 new
前端
猫不易13 分钟前
Webpack 与 Vite:从 Loader / Plugin 到 Rolldown 统一引擎
前端·vite
用户4671795783614 分钟前
【Java全栈教程】第18课:异常处理
java