Java自定义遍历输出对象属性值


一、自定义遍历输出对象属性值

    @Test
    void test() {
        SystemUser systemUser = new SystemUser();
        systemUser.setUserName("root");
        systemUser.setName("卢本伟");

        // 指定需要遍历的属性名称列表
        List<String> propertyNames = Arrays.asList("userName", "name");

        // 遍历并输出属性值
        propertyNames.forEach(propertyName -> {
            try {
                PropertyDescriptor descriptor = new PropertyDescriptor(propertyName, SystemUser.class);
                Object propertyValue = descriptor.getReadMethod().invoke(systemUser);
                System.out.println(propertyName + ": " + propertyValue);
            } catch (Exception e) {
                e.printStackTrace();
            }
        });
    }

实体类

public class SystemUser {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 用户名
     */
    private String userName;

    /**
     * 密码
     */
    private String password;

    /**
     * 姓名
     */
    private String name;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

二、自定义遍历输出对象属性值判断非空

    @Test
    void test() {
        SystemUser systemUser = new SystemUser();
        systemUser.setUserName("root");
        systemUser.setName("卢本伟");

        // 指定需要遍历的属性名称列表
        List<String> propertyNames = Arrays.asList("userName","password", "name");

        // 遍历并输出属性值
        propertyNames.forEach(propertyName -> {
            try {
                PropertyDescriptor descriptor = new PropertyDescriptor(propertyName, SystemUser.class);
                Object propertyValue = descriptor.getReadMethod().invoke(systemUser);
                //校验非空
                if(BeanUtil.isNotEmpty(propertyValue)){
                    System.out.println(propertyName + ": " + propertyValue);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        });
    }
  • 在人生的道路上,不要怕困难和挑战。每一个困难都是你成长的机会,每一个挑战都是你展示才华的舞台。相信自己的能力,坚持不懈地努力,你一定能超越困难,达到更高的境界。
  • 功从不嫌弃努力,而只对坚持者敞开大门。跨过困难的那一刻,你会发现,成功的味道比所有的辛苦和付出都更加美好。所以,请坚持下去,不论遇到什么,都要坚信自己的梦想,努力追逐,终将实现。
  • 别害怕失败,它只是成功路上的一次教训。失败并不可怕,可怕的是放弃。失败是向成功迈出的必经之路,它教会我们知道自己的不足,提醒我们努力变得更好。记住,只有勇敢面对失败,才能真正尝到成功的甜蜜果实。
  • 努力就是最好的回报。无论你想要实现怎样的目标,都需要为之努力奋斗。努力不会辜负你的付出,它会给予你成就感和满足感,它会在你付出汗水的那一刻,给你带来属于你自己的光芒和荣耀。
  • 生活没有捷径可走,只有通过不断努力才能真正获得成功。努力是一种习惯,一种与生俱来的素质。只要你肯付出努力去做,就没有什么是你无法实现的。不管前方有多少艰辛和障碍,只要坚持下去,你会发现,努力的道路上满是美好与收获。
  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和烨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值