JAVA常用工具类及注解汇总

添加lang3依赖

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
</dependency>
  1. 常用的判断段空工具类

  2. 集合类型判断
    • CollectionUtils.isEmpty()
    • CollectionUtils.isNotEmpty()
  3. 对象判断
    • ObjectUtils.isEmpty()
    • ObjectUtils.isNotEmpty()
  4. 字符串类判断
    • StringUtils.isEmpty()
    • StringUtils.isNotEmpty()
    • StringUtils.isBlank()
    • StringUtils.isNotBlank()
    • StringUtils.defaultIfEmpty(null,”aa”)

如果第一个参数为空,则返回第二个参数

      • StringUtils.defaultIfBlank(null,”aa”)

如果第一个参数为空或者为空格,则返回第二个参数

·Empty和Blank的区别在于是否判断空格,如果使用isEmpty则” ”判断为非空,而isBlank判断为空

三种类型的isEmpty方法在spring框架中都有,其他方法需要添加相应的工具类依赖,在使用中尽量添加相应的工具类,实际上在使用的时候集合判断可以使用ObjectUtils.isEmpty和Object Utils.isNotEmpty,这两个类可以判断对象,数组,集合,map,迭代器,字符串

常用字符串操作工具

    • StringUtils.join(参数1,参数2)

参数1为数据,参数2为分割符,参数1可以为各种类型数组,集合,迭代器等等

      • StringUtils.joinWith(参数1,可变参数...)

参数1为分隔符,可变参数可以为多种类型,会调用join方法,可变参数最终以数组的形式拼接

      • StringUtils.abbreviateMiddle(参数1,参数2,参数3)

中间替换

      • StringUtils.abbreviate(参数1,参数2,参数3)

结尾替换

其中参数1为要操作的字符串,参数2为要代替的字符串,参数3为截取的个数,参数3的长度大于参数2的长度加2,而且参数三的长度小于参数1,这样替换才会生效,如果参数三大于等于参数1的长度,则提取参数1所有内容而且不替换

      • StringUtils.contains(参数1,参数2)

参数1是否包含参数2

      • StringUtils.containsAny(参数1,参数2...)

参数1是否包含参数2,或者包含参数n

      • StringUtils.detaultString(参数)

如果参数为null,此方法会将null转换为空字符串

      • StringUtils.replace()

三个参数,会将参数1中的参数2,替换为参数3

生成随机数工具类

  1. 数字数组类型
    • RandomUtils.nextInt(参数1,参数2)

无参情况下随意生成一个正数,如果有参数,在参数1和参数2中间随意生成 一个整数

      • RandomUtils.nextBoolean()

随意生成一个布尔值

      • RandomUtils.nextBytes(参数1)

生成一个字节数组,参数1为生成数组的长度

      • RandomUtils.nextDouble(参数1,参数2)

与整数生成一样,可以随意生成参数1到参数2之间的随意小数,如果无参则随意生成一个小数

      • RandomUtils.nextLong和RandomUtils.nextFloat

与上面生成整数和小数一致

    1. 字符串类型

使用RandomStringUtils类,共有5个方法

      • RandomStringUtils.random(参数1)

随机字符串

      • RandomStringUtils.randomAlphabetic(参数1)

随机字母(不区分大小写)

      • RandomStringUtils.randomAlphanumeric(参数1)

随机字母加数字(不区分大小写)

      • RandomStringUtils.randomAscii(参数1)

随机Ascii字符串

      • RandomStringUtils.randomNumeric(参数1)

随机字符串数字

参数1为生成的字符串个数

日期类型数据的操作

  1. DateFormatUtils
    • DateFormatUtils.format(参数1,参数2)

参数1为日期类型,参数2 要格式化的类型”yyyy-MM-dd HH:mm:SS”

返回一个字符串类型

    1. DateUtils
      • DateUtils.parseDate(参数1,参数2)

参数1 为字符串”2012-02-02 12:38:44”,参数2 为”yyyy-MM-dd HH:mm:SS”, 返回一个日期类型

      • 增加时间
        1. addDays(参数1,参数2)
        2. addYears(参数1,参数2)
        3. addMonths(参数1,参数2)
        4. addHours(参数1,参数2)
        5. addMinutes(参数1,参数2)
        6. addSeconds(参数1,参数2)
        7. addWeeks(参数1,参数2)
        8. addMilliseconds(参数1,参数2)

参数1为Date格式,年 月 日 时 分 秒 周 毫秒在参数1的基础上增加参数 2个单位,如果想减去参数2个单位则将参数2置为负数即可

      • 获取时间片段
        1. DateUtils.getFragmentInDays(参数1,参数2)
        2. DateUtils.getFragmentInHours(参数1,参数2)
        3. DateUtils.getFragmentInMinutes(参数1,参数2)
        4. DateUtils.getFragmentInSeconds(参数1,参数2)
        5. DateUtils.getFragmentInMillieseconds(参数1,参数2)

参数1为日期,参数2需要使用Calendar.Date(天),Calendar.Year(年)...

其中1表示距离本年或月过去多少天,2表示距离本年或月或日过去多少小时,注意,在使用的时候本小时过去多少分钟的时候不能使用calendar.hour,因为查询分钟的时候不支持10号分片,所以查询的时候需要使用Calendar.HOUR_OF_DAY

      • 清除数据
        1. DateUtils.ceiling(参数1,参数2)

参数1 为日期格式,参数2为Calendar.YEAR...,如果参数2为年则得到年命开始时间(清除月日和时分秒信息),如果参数2为月则得到下个月开始时间(清除日时分秒时间)

      • 判断是否是同一天
        1. DateUtils.isSameDay(参数1,参数2 )

参数1 和参数2 如果是同一天,忽略时分秒,则返回true,否则返回false

        1. DateUtils.isSameInstant(参数1,参数2)

判断参数1和参数2 是否是同一时刻,精确到毫秒

      • 设置年月日
        1. DateUtils.setDays(参数1,参数2)
        2. DateUtils.setYears(参数1,参数2)
        3. DateUtils.setMonth(参数1,参数2)

参数1为日期格式,参数2为设置的数字

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值