• StringUtils 系列之 StringUtils.isBlank() 和 StringUtils.isNotBlank() 的区别、CollectionUtils.isEmpty()


    一、StringUtils 系列之 StringUtils.isBlank() 和 StringUtils.isNotBlank() 的区别
    // StringUtils.isEmpty();
    // 判断参数是否诶空, 为空的标准是 str==null, str.length()==0
    StringUtils.isEmpty(null);        // true
    StringUtils.isEmpty("");          // true
    StringUtils.isEmpty(" ");         // false
    StringUtils.isEmpty("a");         // false
    StringUtils.isEmpty(" a ");       // false
    
    // StringUtils.isNotEmpty().等价于 !isEmpty(String str)
    StringUtils.isNotEmpty(null);     // false
    StringUtils.isNotEmpty("");       // false
    StringUtils.isNotEmpty(" ");      // true
    StringUtils.isNotEmpty("bob");    // true
    StringUtils.isNotEmpty(" bob ");  // true
    
    // StringUtils.isBlank()
    // 判断参数:是否为null,长度是否为0,值是否包含空白字符。
    StringUtils.isBlank(null);           // true
    StringUtils.isBlank("");             // true
    StringUtils.isBlank(" ");            // true
    StringUtils.isBlank("\t \n \f \r");  // true
    StringUtils.isBlank("\b");           // false
    StringUtils.isBlank("bob");          // false
    StringUtils.isBlank(" bob ");        // false
    
    // StringUtils.isNotBlank();
    //判断参数:是否不为null,长度是否不为0,值是否不包含空白字符。等价于!isBlank(String str);
    StringUtils.isNotBlank(null);           // false
    StringUtils.isNotBlank("");             // false
    StringUtils.isNotBlank(" ");            // false
    StringUtils.isNotBlank("\t \n \f \r");  // false
    StringUtils.isNotBlank("\b");           // true
    StringUtils.isNotBlank("bob");          // true
    StringUtils.isNotBlank(" bob ");        // true
    
    • 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

    二、Java中判断list为空:CollectionUtils.isEmpty()
    import org.springframework.util.CollectionUtils;
    
    public void testStr() {
    	List<String> list1 = Lists.newArrayList();
    	System.out.println(CollectionUtils.isEmpty(list1));            // true
    	System.out.println(CollectionUtils.isEmpty(new ArrayList()));  // true
    	
    	System.out.println(list1 == null);         // false
    	System.out.println(list1.size());          // 0
    	
    	List<String> list2 = new ArrayList<>();
    	System.out.println(list2 == null);        // false
    	list2 = null;
    	System.out.println(list2 == null);        // true
    	System.out.println(CollectionUtils.isEmpty(list2));  // true
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    1:刚创建出来的 List 长度为 0 ,但不为 null

    2:CollectionUtils.isEmpty()方法可以检查 null 和长度为 0 的 list


    测试记录:

    LOGGER.info(StringUtils.isEmpty(null));             // true
    LOGGER.info(StringUtils.isEmpty(""));               // true
    LOGGER.info(StringUtils.isEmpty(" "));              // false
    LOGGER.info(StringUtils.isEmpty("a"));              // false
    LOGGER.info(StringUtils.isEmpty(" a "));            // false
    
    LOGGER.info(StringUtils.isNotEmpty(null));          // false
    LOGGER.info(StringUtils.isNotEmpty(""));            // false
    LOGGER.info(StringUtils.isNotEmpty(" "));           // true
    LOGGER.info(StringUtils.isNotEmpty("bob"));         // true
    LOGGER.info(StringUtils.isNotEmpty(" bob "));       // true
    
    LOGGER.info(StringUtils.isBlank(null));             // true
    LOGGER.info(StringUtils.isBlank(""));               // true
    LOGGER.info(StringUtils.isBlank(" "));              // true
    LOGGER.info(StringUtils.isBlank("\t \n \f \r"));    // true
    LOGGER.info(StringUtils.isBlank("\b"));             // false
    LOGGER.info(StringUtils.isBlank("bob"));            // false
    LOGGER.info(StringUtils.isBlank(" bob "));          // false
    
    LOGGER.info(StringUtils.isNotBlank(null));          // false
    LOGGER.info(StringUtils.isNotBlank(""));            // false
    LOGGER.info(StringUtils.isNotBlank(" "));           // false
    LOGGER.info(StringUtils.isNotBlank("\t \n \f \r")); // false
    LOGGER.info(StringUtils.isNotBlank("\b"));          // true
    LOGGER.info(StringUtils.isNotBlank("bob"));         // true
    LOGGER.info(StringUtils.isNotBlank(" bob "));       // true
    
    • 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
  • 相关阅读:
    vue 聊天页面
    【LinuxC】时间、时区,相关命令、函数
    最小体力消耗-分支限界法
    简单易懂的 全景图高清下载方法以及原理简要解析(支持下载建E、720yun、酷雷曼、景站、酷家乐、百度街景原图)
    [Java、Android面试]_05_内存泄漏和内存溢出
    设计模式-抽象工厂模式(Abstract Factory Pattern)结构|原理|优缺点|场景|示例
    前端常用的几种加密方法
    极客打板——训练&测试
    基本if选择结构以及random
    JavaScript 数据结构与刷题基础
  • 原文地址:https://blog.csdn.net/LIZHUOLONG1/article/details/128043591