前言
Hutool中提供了许多封装好的工具类,本人整理了下web项目中常用的一些工具类和方法,更多详细的用法直接点击跳转官方文档查阅。
1.IO流工具-IoUtil,FileUtil
readLines-按行读取close-关闭流
1 |
|
执行结果:
1 | 10:57:23.174 [main] INFO common.HutoolTest - test1.text 内容: [红豆生南国,, 春来发几枝。, 愿君多采撷,, 此物最相思。] |
2.对象工具-ObjectUtil
defaultIfNull-默认值equals-比较两个对象是否相等isNull isNotNull isEmpty isNotEmpty-判空isBasicType-判断对象是否为基础类型clone cloneIfPossible-克隆对象
1 |
|
执行结果:
1 | 15:01:06.520 [main] INFO common.HutoolTest - *****************1.默认值****************** |
3.集合、Map和数组工具-CollUtil,ListUtil,MapUtil,ArrayUtil
isEmpty,isNotEmpty和defaultIfEmpty-判空和默认值方法几个工具类都有就不一一举例了
CollUtil
newArrayList-初始化一个可变集合join-集合转换为拼接字符串sortPageAll
1 | // CollUtil.newArrayList返回的list支持修改,Arrays.asList返回的list继承了AbstractList,不可修改 |
执行结果:
1 | 14:47:33.974 [main] INFO common.HutoolTest - join: a,b,c, list=[a, b, c] |
ListUtil
of-初始化UnmodifiableRandomAccessList集合toList-初始化ArrayList集合toLinkedList-初始化LinkedList集合unmodifiable-构建不可修改集合reverse reverseNew-反转集合sortByPinyin-拼音排序集合
1 |
|
执行结果:
1 | 15:35:38.478 [main] INFO common.HutoolTest - list1: [a, b, c], class=class java.util.Collections$UnmodifiableRandomAccessList |
MapUtil
newHashMap-初始化Mapjoin-map拼接成字符串reverse-键和值互换toListMap-行转列toMapList-列转行getKey-根据值获取键
1 |
|
执行结果:
1 | 16:32:07.895 [main] INFO common.HutoolTest - map: {a=1, b=2, c=3} |
ArrayUtil
isArray-是否为数组join-数组拼接字符串toString-数组toStringcontains-包含元素判断
1 |
|
执行结果:
1 | 17:12:59.713 [main] INFO common.HutoolTest - isArray: true, a=[1, 2, 3] |
4.字符串工具-StrUtil
reverse-反转字符串format-format方法 与sl4j用法完全一样addSuffixIfNot commonSuffix endWithAnyIgnoreCase removeSuffixIgnoreCase- 后缀相关处理
1 |
|
执行结果:
1 | 17:49:39.296 [main] INFO common.HutoolTest - reverse: cba |
5.Bean工具-BeanUtil
isBean-是否为Bean对象toBean-map转beanbeanToMap-bean转map
1 |
|
执行结果:
1 | 18:10:01.223 [main] INFO common.HutoolTest - isBean: false |
6.类型转换工具-Convert
toStr-转换成字符串toIntArray-转换为指定类型数组toDate-转换为日期对象toList-转换为集合convertTime-时间单位转换digitToChinese-额大小写转换
1 |
|
执行结果:
1 | 21:35:40.676 [main] INFO common.HutoolTest - aStr: 1 |
7.字段验证器-Validator
isEmail-邮箱校验isIpv4-Ipv4校验isUrl-url校验isCreditCode-统一社会信用代码校验isUUID-UUID校验isLetter-字母校验isChinese-中文校验isNumber-数字校验
1 |
|
执行结果:
1 | 22:19:10.655 [main] INFO common.HutoolTest - isEmail: true |
8.正则工具-ReUtil
isMatch-是否匹配给定正则contains-是否包含给定正则的字符串findAll-查找所有匹配文本getFirstNumber-找到匹配的第一个数字
1 |
|
执行结果:
1 | 22:37:10.223 [main] INFO common.HutoolTest - isMatch: true |
9.日期时间工具-DateUtil
now today-当前时间、当前日期parse format formatDate … -格式化输出日期offset yesterday lastWeek … - 日期时间偏移between-日期时间差getZodiac-星座getChineseZodiac-属相ageOfNow-年龄isLeapYear-是否闰年
1 |
|
执行结果:
1 | 22:01:38.392 [main] INFO common.HutoolTest - ****************当前时间***************** |
10.数学相关工具-NumberUtil,MathUtil
NumberUtil
isNumber-是否为数字isInteger-是否为整数isDouble-是否为浮点数isPrimes-是否为质数decimalFormat-数字格式化add sub mul div-四则运算(解决float和double类型无法进行精确计算的问题)factorial-阶乘
1 |
|
执行结果:
1 | 22:06:17.108 [main] INFO common.HutoolTest - ****************是否为数字***************** |
MathUtil
arrangementCount-计算排列数arrangementSelect-排列选择(从列表中选择n个排列)combinationCount-计算组合数combinationSelect-组合选择(从列表中选择n个组合)
1 |
|
执行结果:
1 | 22:07:12.414 [main] INFO common.HutoolTest - matchesCount1: 30, A(m,n)=30 |
11.Http工具-HttpUtil
isHttps isHttp-判断Url是否https,httpget-GET请求post-POST请求
1 |
|
执行结果:
1 | 22:08:52.414 [main] INFO common.HutoolTest - isHttps: true, isHttp: false |
12.HTML工具-HtmlUtil
escape-转义HTML特殊字符unescape-还原被转义的HTML特殊字符removeHtmlTag-清除指定HTML标签和被标签包围的内容cleanHtmlTag-清除所有HTML标签,但是保留标签内的内容
1 |
|
执行结果:
1 | 22:10:30.589 [main] INFO common.HutoolTest - escape: <html><body>123'123'</body></html> |
13.Spring工具-SpringUtil
getBean-获取指定Bean
1 |
|
执行结果:
1 | 20:30:31.895 INFO 40615 --- [main] common.HutoolTest : handler1: com.xxx.handler.AliPayHandler@653fb8d1 |
- 本文作者: yinshuang
- 本文链接: https://yinshuang007.github.io/2023/07/04/Hutool常用工具类整理/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!