java统计实体类中空字段数量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package org.example;
import java.lang.reflect.Field;
/**
 * @author 50649
 */
public class TestCount {
    public static int countNullFields(Object entity) throws IllegalAccessException {
        if (entity == null) {
            return 0;
        }
        int nullFieldCount = 0;
        Class<?> clazz = entity.getClass();
        Field[] fields = clazz.getDeclaredFields();
        for (Field field : fields) {
            field.setAccessible(true);
            Object fieldValue = field.get(entity);
            if (fieldValue == null) {
                nullFieldCount++;
            }
        }
        return nullFieldCount;
    }
 
    public static void main(String[] args) throws IllegalAccessException {
        // 假设有一个实体类 Entity 如下:
        // class Entity {
        //     String name;
        //     Integer age;
        //     String email;
        // }
        Entity entity = new Entity();
        entity.name = "John";
        entity.email = null;
 
        int nullFieldCount = countNullFields(entity);
        System.out.println("Number of null fields: " + nullFieldCount);
    }
}

  

1
2
3
4
5
6
7
8
9
10
package org.example;
 
/**
 * @author 50649
 */
public class Entity {
    String name;
    Integer age;
    String email;
}

  

posted @   红尘沙漏  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示