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}
相关推荐
2601_9621771311 分钟前
【MySQL篇】聚合查询,联合查询
android·java·mysql
それども26 分钟前
IDEA接入Claude完整流程
java·ai·intellij-idea
小鹿的周先生1 小时前
Spring-AI-第2篇-ChatClient 实战:使用 DeepSeek 完成第一次 AI 对话
java·人工智能·spring
悲且狂1 小时前
SpringBoot项目改造注意事项(旧项目框架复用)
java·spring boot·后端
花间相见2 小时前
【LangChain组件03】—— LangChain Agents 执行与状态:工作流程与状态管理实战
java·前端·langchain
敲代码的嘎仔2 小时前
28届后端开发-海康威视日常实习一面(已OC)
java·开发语言·后端·面试·海康威视·实习·大厂
程序员黎剑3 小时前
Spring-Bean生命周期-构造器访问Autowired字段为null
java·后端·spring
古法安卓4 小时前
Android-重启流程源码解析
android·java·android studio
清水白石0084 小时前
Python 类型设计深度解析:TypedDict 能否替代 dataclass?从 JSON 数据边界到 API 设计的最佳实践
java·python·json
晊晌_h4 小时前
嵌入式从0到精通——线程
java·开发语言·jvm