Lombok:@Singular集合元素灵活添加利器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

一、@Singular介绍

二、使用示例

三、注意事项

四、使用场景

总结


提示:以下是本篇文章正文内容,下面案例可供参考

一、@Singular介绍

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

二、使用示例

复制代码
@Data
@Builder
public class User {
    private String name;
    private int age;
    @Singular
    private List<String> hobbies;
}

// 使用 @Builder 和 @Singular 生成的方法
User user = User.builder()
    .name("练习时长两年半")
    .age(28)
    .hobby("篮球") // 添加单个元素
    .hobby("唱歌") // 添加单个元素
    .hobbies(Arrays.asList("跳舞", "其他")) // 添加整个集合
    .build(); // 构造 User 对象

可以看出,使用 @Singular 注解的好处是,你可以灵活地添加集合类型的字段,而不需要自己创建和初始化集合对象

如果我们在做单元测试或者编码的时候,能够很方便的完成集合的操作,包括添加多个元素和添加单个元素。

另外,使用 @Singular 注解生成的集合字段,在调用 build() 方法后,会被转换为不可变的集合,这样可以保证对象的不变性和线程安全性。你也可以使用 clear() 方法来清空集合字段

三、注意事项

1、使用 @Singular 注解生成的集合字段,在调用 build() 方法后,会被转换为不可变的集合

2、如果你的类继承了一个父类,那么 @Builder 只会生成当前类的字段和参数,不包括父类的

四、使用场景

1、利用可以添加单个元素的特性,可以在不定义集合的情况下,完成编码

2、利用生成的集合对象的不变性和线程安全性,在某些特殊的场景下,可以作为只读信息存在


总结

每天进步一点点!

相关推荐
萤丰信息1 小时前
智慧园区能源革命:从“耗电黑洞”到零碳样本的蜕变
java·大数据·人工智能·科技·安全·能源·智慧园区
曹牧1 小时前
Eclipse为方法添加注释
java·ide·eclipse
我叫张小白。2 小时前
Spring Boot拦截器详解:实现统一的JWT认证
java·spring boot·web·jwt·拦截器·interceptor
Gerardisite4 小时前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
闲人编程5 小时前
Python的导入系统:模块查找、加载和缓存机制
java·python·缓存·加载器·codecapsule·查找器
故渊ZY5 小时前
Java 代理模式:从原理到实战的全方位解析
java·开发语言·架构
匿者 衍5 小时前
POI读取 excel 嵌入式图片(支持wps 和 office)
java·excel
一个尚在学习的计算机小白5 小时前
java集合
java·开发语言
IUGEI5 小时前
synchronized的工作机制是怎样的?深入解析synchronized底层原理
java·开发语言·后端·c#
q***13615 小时前
Windows操作系统部署Tomcat详细讲解
java·windows·tomcat