开发技术-Java实体类链式赋值简单示例
创始人
2025-05-29 22:14:57
0

文章目录

  • 1. 普通的赋值方式
  • 2. 使用 @Builder
  • 3. 使用@Accessors

1. 普通的赋值方式

这是个非常普通的实体类

public class User {private String name;private int age;private String sex;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}
}

常规的赋值方式为:

public class TestL {public static void main(String[] args) {User user = new User();user.setName("a");user.setAge(10);user.setSex("男");}
}

当实体类的字段非常多时,就会产生大量的类似代码。

省力一点,可以使用插件 GenerateAllSetter 一键生成。
在这里插入图片描述

开发技术-常用idea插件推荐,助力开发

当然还是有些麻烦的。

2. 使用 @Builder

@Builder 是 lombok 的注解,需要加在实体类上

import lombok.Builder;@Builder
public class User2 {private String name;private int age;private String sex;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}
}

使用方式为:

public class TestL {public static void main(String[] args) {// PS:类名.builder().属性赋值.build()返回对象User user = User.builder().name("b").age(12).sex("女").build();}
}

3. 使用@Accessors

@Accessors 也是 lombok 的注解,有位大佬写的很详细:@Accessors 注解详解

该注解也是在实体类上使用:

import lombok.Data;
import lombok.experimental.Accessors;@Data
@Accessors(chain = true)
public class User {// PS:这时候不能使用自己生成的 getter setter,得使用 lombok 注解生成private String name;private int age;private String sex;
}

使用方式为:

public class TestL {public static void main(String[] args) {User user = new User();user.setName("c").setAge(15).setSex("男");}
}

从代码就可以看出,链式编程代码简洁、可读性强,不过听说不好调试,第一次用,我去试试。
在这里插入图片描述
(图源网络,侵删)

相关内容

热门资讯

太突然!知名海外策略分析师张忆... 来源丨金石杂谈 12月31日,在喜迎2026年之前,知名海外策略分析师张忆东在个人公众号官宣离职。他...
离岸人民币兑美元一度升破6.9... 离岸人民币兑美元一度升破6.97,创2023年5月以来新高。 责编:彭勃 校对:王朝全
壁仞科技上市首日涨超100%,... 1月2日,“港股GPU第一股”壁仞科技(06082.HK)在港交所上市。开盘报35.7港元/股,较1...
开盘大涨超110%!“港股国产... 红星资本局1月2日消息,今日,“港股GPU第一股”壁仞科技在港交所挂牌上市,成为2026年港股市场首...
投资收益率排名垫底,中国太保更... 2025年最后一天,中国太保更换了首席投资官。12月31日,中国太保发布公告称,经董事会审议通过,同...
芯片股集体走强,华虹半导体盘中... 新京报贝壳财经讯 1月2日,港股芯片股集体走强,其中,华虹半导体盘中涨超9%,芯智控股盘中涨近5%,...
晓数点丨2025年十大牛股出炉... 2025年,沪指报收3968.84点,全年收涨18.41%,年内时隔十年重回4000点;创业板指全年...
复盘2025!公募基金四大痛点... 编者按:2025年,随着一系列改革举措加速落地见效,公募基金行业的高质量发展成色持续提升。岁末年初,...
斯基拉爆料:迈尼昂接近与米兰续... 新年伊始,对于AC米兰的球迷们来说,没有什么比听到主力门将迈尼昂即将续约的消息更令人振奋了。据知名记...
最新!美国对部分跨境汇款征收1... 据央视新闻,当地时间2026年1月1日,美国针对部分跨境汇款的新税收措施正式生效。根据美国财政部和美...