首页 > 其他分享 >commons-lang3使用

commons-lang3使用

时间:2022-10-03 16:22:51浏览次数:41  
标签:isCreatable NumberUtils System commons str 使用 println lang3 out

  • 引入依赖
<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-lang3</artifactId>
  <version>3.9</version>
</dependency>
  • 案例1
import org.apache.commons.lang3.StringUtils;
import org.junit.Test;

public class StringUtilsTest {

    /**
     * 12345678911
     * 脱敏
     * 123****8911
     */
    @Test
    public void test3() {
        String str = "12345678911";
        // 返回某个字符串左边的几个字符
        String left = StringUtils.left(str, 3);// 123
        String right = StringUtils.right(str, 4);// 8911
        System.out.println(left+"****" + right);
        // rightPad:如果left长度<7,那么就在右边用*填充到7个长度
        String padResult = StringUtils.rightPad(left, 7, '*');
        System.out.println(padResult + right);
    }

    /**
     * 判断null/""
     */
    @Test
    public void test2() {
        String str = "   ";
        System.out.println(StringUtils.isEmpty(str));// false
        // 反过来
        System.out.println(StringUtils.isNotEmpty(str));
    }

    /**
     * 判断null/""/"   "
     */
    @Test
    public void test1() {
        String str = "   ";
        System.out.println(StringUtils.isBlank(str));
        // 反过来
        System.out.println(StringUtils.isNotBlank(str));
    }
    
}
  • 案例2
import org.apache.commons.lang3.math.NumberUtils;
import org.junit.Test;

public class NumberUtilsTest {
    /**
     * 给我判断一个参数是不是数字(整数、浮点数)
     */
    @Test
    public void test1() {
        String str ="12.3aaa";
        // isDigits只能判断整数,也就是参数只能包含数字的时候才返回true,都是当做10进制来处理的
        System.out.println(str+"isDigits结果:"+NumberUtils.isDigits(str)); // false
        // isParsable可以判断是不是整数、浮点数,不能识别正负,都是当做10进制来处理的
        System.out.println(str+"isParsable结果:"+NumberUtils.isParsable(str)); // false
        // isCreatable可以判断是不是整数、浮点数,识别正负号,以及进制
        System.out.println(str+"isCreatable结果:"+NumberUtils.isCreatable(str));// false
        str = "12.3";
        System.out.println(str+"isDigits结果:"+NumberUtils.isDigits(str)); // false
        System.out.println(str+"isParsable结果:"+NumberUtils.isParsable(str)); // true
        System.out.println(str+"isCreatable结果:"+NumberUtils.isCreatable(str));// true
        str ="+12.3";
        System.out.println(str+"isDigits结果:"+NumberUtils.isDigits(str)); // false
        System.out.println(str+"isParsable结果:"+NumberUtils.isParsable(str)); // false
        System.out.println(str+"isCreatable结果:"+NumberUtils.isCreatable(str));// true
        str ="12";
        System.out.println(str+"isDigits结果:"+NumberUtils.isDigits(str)); // true
        System.out.println(str+"isParsable结果:"+NumberUtils.isParsable(str));// true
        System.out.println(str+"isCreatable结果:"+NumberUtils.isCreatable(str));// true
        str ="09";
        System.out.println(str+"isDigits结果:"+NumberUtils.isDigits(str)); // true
        System.out.println(str+"isParsable结果:"+NumberUtils.isParsable(str));// true
        // 以0开头认为是8进制
        System.out.println(str+"isCreatable结果:"+NumberUtils.isCreatable(str));// false
    }
}
  • 案例3
import org.apache.commons.lang3.ObjectUtils;
import org.junit.Test;

public class ObjectUtilsTest {
    /**
     * System.identityHashCode(obj):不管obj所在的类有没有重写hashcode方法,identityHashCode
     * 始终调用的都是Object.hashCode()
     */
    @Test
    public void test2() {
        // java.lang.String@7d6f77cc
        System.out.println(ObjectUtils.identityToString("abc"));
    }
    /**
     * str1,str2,str3....取第一个不为空的作为结果使用
     */
    @Test
    public void test1() {
        String str1=null;
        String str2=null;
        String str3="str233";
        System.out.println(ObjectUtils.firstNonNull(str1, str2, str3));
    }
}
  • 案例4
import org.apache.commons.lang3.ArrayUtils;
import org.junit.Test;

public class ArrayUtilsTest {
    /**
     * 给已有数组添加元素
     */
    @Test
    public void test2(){
        int[] ints = new int[1];
        ints[0] = 3;
        // toString打印数组内容
        System.out.println(ArrayUtils.toString(ints));
        // add会自动帮你创建新的数组
        int[] newArr = ArrayUtils.add(ints, 7);
        System.out.println(ArrayUtils.toString(ints));
        System.out.println(ArrayUtils.toString(newArr));//

    }
    /**
     * 判断一个数组是不是空的(null/长度为0)
     */
    @Test
    public void test1(){
        Integer[] ints = new Integer[0];
        ints = null;
        System.out.println(ArrayUtils.isEmpty(ints));
    }
}

标签:isCreatable,NumberUtils,System,commons,str,使用,println,lang3,out
From: https://www.cnblogs.com/chniny/p/16750660.html

相关文章

  • git rebase 使用
    1.GITREBASE使用说明gitrebase作用将提交进行合并有些时候,我们在开发的时候,可能在本地做了几次提交,但是这个提交是解决一个问题的,这个时候如果我们向远程推送的时候,那么......
  • TypeScript 类型增强declare的使用
    类型增强declare的使用1.如果一个有一个全局变量golabaol。在index.html中。2.我们在xx.vue中使用golabaol。这个时候会报错找不到名称“golabaol解决办法:......
  • Photoshop 2022 for Mac(最强修图软件ps 2022)v23.5.1永久使用 mac/win
    Photoshop2022中文Mac破解版更新啦~Photoshop简称ps,它是一款专业图像处理软件,此次更新软件可选择项目云服务生成更准确和高质量的图像;软件界面也有了新的中性UI颜色模式,视......
  • @preauthorize使用
    在SpringSecurity中使用PreAuthorize调用自己的方法如果您想在SpringSecurity方法授权中使用一些复杂的逻辑进行授权,则可以调用任何bean的方法。顺便说一句,如果您想正确添......
  • 使用Python实现读取TXT小说文件按每一回显示打印出来
    大家好,我是皮皮。一、前言前几天在Python铂金交流群【红色基因代代传】问了一个Python处理的问题,提问截图如下:文件里边的部分截图如下:大概的需求如下所示:二、实现过程这里【......
  • Overleaf使用技巧
    插入图片%插入图片%\begin{figure} \centering%居中%\resizebox{0.8\hsize}{!}{\includegraphics[clip=true]{Images/tu2.png}}%控制表格大小%\caption{2PC......
  • centos7中配置java + mysql +jdk +使用jar部署项目
    centos7中配置java +mysql+jdk +使用jar部署项目思维导图     1. 配置JDK環境1.1下载jdk安装包 JavaDownloads|Oracle1.2将下载jdk安装包放置c......
  • gradle安装、配置,使用命令构建spring boot项目
    安装#下载到本地直接解压#配置环境变量GRADLE_HOMEGRADLE_USER_HOMEPATH#打开cmd:gradle-videa配置打包常用命令#cmd进入项目根路径gradlewbuildgradlewcleangradleb......
  • 使用mybatis plus常见错误
    错误1:​​代码生成器依赖和mybatis依赖冲突​​启动项目时报错如下2021-12-0313:33:33.927ERROR7228---[main]o.s.b.d.LoggingFailureAnalysisReporter......
  • Clion + QT个人使用总结
    大部分教学和资料都是qmake的所以碰到一些问题cmake的资料还是比较少所以苯人小小总结一下......