| 程序包 | 说明 |
|---|---|
| cn.hutool.core.collection |
集合以及Iterator封装,包括集合工具CollUtil,Iterator和Iterable工具IterUtil
|
| cn.hutool.core.exceptions |
特殊异常封装,同时提供异常工具ExceptionUtil
|
| cn.hutool.core.lang.func |
函数封装
接口灵感来自于ActFramework 一个函数接口代表一个一个函数,用于包装一个函数为对象 在JDK8之前,Java的函数并不能作为参数传递,也不能作为返回值存在,此接口用于将一个函数包装成为一个对象,从而传递对象 |
| cn.hutool.core.text |
提供文本相关操作的封装,还包括Unicode工具UnicodeUtil
|
| cn.hutool.core.util |
提供各种工具方法,按照归类入口为XXXUtil,如字符串工具StrUtil等
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <K,V,E> Map<K,V> |
CollUtil.toMap(Iterable<E> values,
Map<K,V> map,
Func1<E,K> keyFunc,
Func1<E,V> valueFunc)
集合转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map |
static <K,V,E> Map<K,V> |
CollUtil.toMap(Iterable<E> values,
Map<K,V> map,
Func1<E,K> keyFunc,
Func1<E,V> valueFunc)
集合转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map |
static <K,V> Map<K,V> |
CollUtil.toMap(Iterable<V> values,
Map<K,V> map,
Func1<V,K> keyFunc)
集合转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,元素作为值 |
static <K,V,E> Map<K,V> |
IterUtil.toMap(Iterator<E> iterator,
Map<K,V> map,
Func1<E,K> keyFunc,
Func1<E,V> valueFunc)
集合转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map |
static <K,V,E> Map<K,V> |
IterUtil.toMap(Iterator<E> iterator,
Map<K,V> map,
Func1<E,K> keyFunc,
Func1<E,V> valueFunc)
集合转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map |
static <K,V> Map<K,V> |
IterUtil.toMap(Iterator<V> iterator,
Map<K,V> map,
Func1<V,K> keyFunc)
Iterator转换为Map,转换规则为:
按照keyFunc函数规则根据元素对象生成Key,元素作为值 |
| 限定符和类型 | 接口和说明 |
|---|---|
static interface |
CheckedUtil.Func1Rt<P,R> |
| 限定符和类型 | 方法和说明 |
|---|---|
static <P,R> CheckedUtil.Func1Rt<P,R> |
CheckedUtil.uncheck(Func1<P,R> expression)
接收一个可以转化成 cn.hutool.core.lang.func.Func1 的Lambda表达式,当执行表达式抛出任何异常的时候,都会转化成运行时异常
如此一来,代码中就不用显示的try-catch转化成运行时异常
|
static <P,R> CheckedUtil.Func1Rt<P,R> |
CheckedUtil.uncheck(Func1<P,R> expression,
Supplier1<RuntimeException,Exception> rteSupplier)
接收一个可以转化成 cn.hutool.core.lang.func.Func1的Lambda表达式,和一个可以把Exception转化成RuntimeExceptionde的表达式,当执行表达式抛出任何异常的时候,都会转化成运行时异常
如此一来,代码中就不用显示的try-catch转化成运行时异常
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> String |
LambdaUtil.getFieldName(Func1<T,?> func)
获取lambda表达式Getter或Setter函数(方法)对应的字段名称,规则如下:
getXxxx获取为xxxx,如getName得到name。
|
static <T> String |
LambdaUtil.getMethodName(Func1<T,?> func)
获取lambda表达式函数(方法)名称
|
static <T> SerializedLambda |
LambdaUtil.resolve(Func1<T,?> func)
解析lambda表达式,加了缓存。
|
| 限定符和类型 | 方法和说明 |
|---|---|
static String |
CharSequenceUtil.replace(CharSequence str,
Pattern pattern,
Func1<Matcher,String> replaceFun)
替换所有正则匹配的文本,并使用自定义函数决定如何替换
replaceFun可以通过 Matcher提取出匹配到的内容的不同部分,然后经过重新处理、组装变成新的内容放回原位。 |
static String |
CharSequenceUtil.replace(CharSequence str,
String regex,
Func1<Matcher,String> replaceFun)
替换所有正则匹配的文本,并使用自定义函数决定如何替换
|
| 限定符和类型 | 方法和说明 |
|---|---|
static String |
ReUtil.replaceAll(CharSequence str,
Pattern pattern,
Func1<Matcher,String> replaceFun)
替换所有正则匹配的文本,并使用自定义函数决定如何替换
replaceFun可以通过 Matcher提取出匹配到的内容的不同部分,然后经过重新处理、组装变成新的内容放回原位。 |
static String |
ReUtil.replaceAll(CharSequence str,
String regex,
Func1<Matcher,String> replaceFun)
替换所有正则匹配的文本,并使用自定义函数决定如何替换
replaceFun可以通过 Matcher提取出匹配到的内容的不同部分,然后经过重新处理、组装变成新的内容放回原位。 |
Copyright © 2022. All rights reserved.