Bootstrap

Integer和String非空判断

1.Integer封装类不赋值的话默认为null

1.1 Integer判断值是否相等

阿里巴巴的《Java开发手册》中也有相应的规定,规定的内容如下:

所有整型包装类对象之间值的比较,全部使用 equals 方法比较。
说明:对于 Integer var = ? 在 -128 至 127 之间的赋值,Integer 对象是在 IntegerCache.cache 产生, 会复用已有对象,这个区间内的 Integer 值可以直接使用 == 进行判断,但是这个区间之外的所有数据,都 会在堆上产生,并不会复用已有对象,这是一个大坑,推荐使用 equals 方法进行判断。

当我们使用 new Integer 时,无论值为多少都不能使用 == 比较
new Integer 方法并没有使用到 IntegerCache,而是直接创建了新对象,因此就不能用 == 比较了

原文链接【https://blog.csdn.net/weixin_39694838/article/details/110714181?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_utm_term~default-1.pc_relevant_default&spm=1001.2101.3001.4242.2&utm_relevant_index=4】

2.StringUtils工具类的isBlank()方法使用说明

在校验一个String类型的变量是否为空时,通常存在3中情况
是否为 null
是否为 “”
是否为空字符串(引号中间有空格) 如: " "。
StringUtils的isBlank()方法可以一次性校验这三种情况,返回值都是true
原文链接】:https://blog.csdn.net/xiao__jia__jia/article/details/82829016

        //下单截止时间
        if (null == request.getOrderAdvanceDay()) {
            request.setOrderAdvanceDay(0);
        } 
        insurancePackageInfo.setOrderAdvanceDay(request.getOrderAdvanceDay());
        if (StringUtils.isBlank(request.getOrderTime())) {
            request.setOrderTime("00:00");
        }
        insurancePackageInfo.setOrderTime(request.getOrderTime());

Java 各种数据类型判断是否为空或者为null方法

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;