实体类获取空值时的判断

这篇博客探讨了在Java中实体类获取字段值时如何正确判断空值的情况。针对String、Long包装类、long基本类型以及Date,博主通过测试代码展示了不同类型的判断方法。总结指出,包装类可以直接用null判断,基本数据类型为0,而使用get方法时需注意可能抛出的空指针异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

由于总是分不清equals==的区别,该何时用什么判断是否为 null

实体类

public class User{
   //正常String
    private String biztoken;
    //包装类
    private Long data1;
    //基本数据类型
    private long data2;
    //日期类型
    private Date date;
    }

测试代码

String 的结果
 public static void main(String[] args) {
       User user = new User();
        String biz = user .getBiztoken();
        if(biz == null){
            System.out.println("biz == null");
        }

        if(("").equals(biz)){
            System.out.println("('').equals(biz)");
        }

        if(biz == "null"){
            System.out.println("biz =='null'");
        }

        if(("null").equals(biz)){
            System.out.println("('null’).equals(biz)");
        }

    }
    System.out.println(StringUtil.isEmpty(biz));//true
        System.out.println(StringUtil.isBlank(biz));;//true
conditionsbiz == null(“”).equals(biz)biz == “null”(“null”).equals(biz)
String biz = find.getBiztoken();
String biz = find.getBiztoken().toString();空指针异常空指针异常空指针异常空指针异常
String biz =String.valueOf(find.getBiztoken());
Long包装类测试
public static void main(String[] args) {
       User user = new User();
       Long biz = find.getData1();
       if(biz == null){
           System.out.println("biz == null");
       }

        if(biz == 0){
            System.out.println("biz == 0");
        }

        if(("").equals(biz)){
            System.out.println("('').equals(biz)");
        }
//connot applied to "java.lang.Long","java.lang.String"
//        if(biz == "null"){
//           System.out.println("biz =='null'");
//         }

        if(("null").equals(biz)){
            System.out.println("('null’).equals(biz)");
        }
conditionsbiz == null(“”).equals(biz)biz == “null”(“null”).equals(biz)biz == 0
Long biz = find.getData1();异常NullPointerException
long 基本数据类型测试
public static void main(String[] args) {
       User user = new User();
       long biz = find.getData2();
      //       if(biz == null){
//           System.out.println("biz == null");
//       }

        if(biz == 0){
            System.out.println("biz == 0");
        }

        if(("").equals(biz)){
            System.out.println("('').equals(biz)");
        }
//        if(biz == "null"){
//           System.out.println("biz =='null'");
//         }

        if(("null").equals(biz)){
            System.out.println("('null’).equals(biz)");
        }
        //System.out.println(StringUtil.isEmpty(biz));//异常,connot be applied to
        System.out.println(StringUtil.isBlank(biz));;//false
conditionsbiz == null(“”).equals(biz)biz == “null”(“null”).equals(biz)biz == 0
Long biz = find.getData1();异常异常
Date测试
 public static void main(String[] args) {
       User user = new User();
       Date biz = user.getDate();
        if(biz == null){
           System.out.println("biz == null");
       }

        if(("").equals(biz)){
            System.out.println("('').equals(biz)");
        }
//        if(biz == "null"){
//           System.out.println("biz =='null'");
//         }

        if(("null").equals(biz)){
            System.out.println("('null’).equals(biz)");
        }

    }
    System.out.println(StringUtil.isEmpty(biz));//connot be applied to
        System.out.println(StringUtil.isBlank(biz));;//true
conditionsbiz == null(“”).equals(biz)biz == “null”(“null”).equals(biz)
String biz = find.getBiztoken();异常,connot apply to Date,string

总结

以下情况针对于直接用 get 空值时

1.对于包装类的数据,直接用==null判断
2.对于基本数据类型,没有值时为 0
3.对于get 方法,取出来的应该是 Object 类型,
3.1 实体类中是包装类,用Integer包装类接收没有问题,但如果用基本数据类型 int 接收,运行时会报空指针异常。
3.2 实体类中是基本数据类型,无论何种接收没有问题,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值