commons-lang3工具常用方法

commons-lang3是一个开源的Java类库,提供了一组实用工具类,主要用于操作字符串、日期、数值、数组等基本类型和对象。它的功能非常全面,几乎可以满足Java程序开发中所有涉及到的常规任务。

引入依赖

复制代码
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.9</version>
        </dependency>

字符串处理

判断字符串是否为null或者空白字符

java 复制代码
       // null
        String str=null;
        // 空字符串
        String str1="   ";
        // str
        // 判断字符串是否非为null或者空白字符
        System.out.println(StringUtils.isBlank(str)); //true
        // 判断字符串是否非为null或者空白字符
        System.out.println(StringUtils.isNoneBlank(str)); //false
        // str1
        // 判断字符串是否为null或者空白字符
        System.out.println(StringUtils.isBlank(str1)); //true
        // 判断字符串是否非为null或者空白字符
        System.out.println(StringUtils.isNoneBlank(str1)); //false

判断字符串是否为null

java 复制代码
        // null
        String str=null;

        // str
        // 判断字符串是否非为null
        System.out.println(StringUtils.isBlank(str)); //true
        // 判断字符串是否非为null
        System.out.println(StringUtils.isNoneBlank(str)); //false

截取字符串

java 复制代码
        // str
        String str="13825339078";
        
        // 截取字符串左边3个字符
        String left = StringUtils.left(str, 3); // 138
        // 截取字符串右边4个字符
        String right = StringUtils.right(str, 4); // 9078
        // 填充字符串左边字符使整个字符串长度为7
        String leftPad = StringUtils.leftPad(left, 7, '*'); // ****138
        // 填充字符串右边字符使整个字符串长度为7
        String rightPad = StringUtils.rightPad(left, 7, '*');
        // 脱敏
        System.out.println(rightPad+right ); // 138****9078

字符串大小写转换

java 复制代码
        // str
        String str="wsWS";

        System.out.println(StringUtils.upperCase(str)); // WSWS
        System.out.println(StringUtils.lowerCase(str)); // wsws

数字处理

判断数字

java 复制代码
        // str
        String str="12";
        // isDigits只能判断整数
        System.out.println(NumberUtils.isDigits(str)); // true
        str="12.33";
        // isParsable可以判断时尚芭莎整数、浮点数
        System.out.println(NumberUtils.isParsable(str)); // true
        str="-12.33";
        // isCreatable可以判断是不是整数、浮点数、正负号
        System.out.println(NumberUtils.isCreatable(str)); // true

随机生成数

java 复制代码
        int min=0,max=2000;
        System.out.println(RandomUtils.nextInt(min, max)); // 626

对象处理

返回第一个值

java 复制代码
        Integer a=null;
        Integer b=null;
        Integer c=1;
        System.out.println(ObjectUtils.firstNonNull(a, b, c)); // 1

数组处理

判断数组是否为null或为长度为0

java 复制代码
        Integer[] a=new Integer[0];
        System.out.println(ArrayUtils.isEmpty(a));
        a=null;
        System.out.println(ArrayUtils.isEmpty(a));

向已有数组追加

java 复制代码
        Integer[] a=new Integer[1];
        a[0]=3;
        System.out.println(ArrayUtils.toString(a)); // {3}
        Integer[] b = ArrayUtils.add(a, 5);
        System.out.println(ArrayUtils.toString(b)); // {3,5}
相关推荐
ZHE|张恒1 分钟前
Spring Boot 3 + Flyway 全流程教程
java·spring boot·后端
TDengine (老段)26 分钟前
TDengine 数学函数 CRC32 用户手册
java·大数据·数据库·sql·时序数据库·tdengine·1024程序员节
心随雨下1 小时前
Tomcat日志配置与优化指南
java·服务器·tomcat
Kapaseker1 小时前
Java 25 中值得关注的新特性
java
wljt1 小时前
Linux 常用命令速查手册(Java开发版)
java·linux·python
撩得Android一次心动1 小时前
Android 四大组件——BroadcastReceiver(广播)
android·java·android 四大组件
canonical_entropy1 小时前
Nop平台到底有什么独特之处,它能用在什么场景?
java·后端·领域驱动设计
chilavert3181 小时前
技术演进中的开发沉思-174 java-EJB:分布式通信
java·分布式
不是株1 小时前
JavaWeb(后端进阶)
java·开发语言·后端