提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、pandas是什么?
-
二、使用步骤
- 1.引入库
- 2.读入数据
- 总结
前言
Hutool工具类库作为java工具库,包含了日常开发过程中经常使用的方法。方便小伙伴使用及学习,可以说是一个"百宝箱",你想要的全都有。
提示:以下是本篇文章正文内容,下面案例可供参考
一、Hutool是什么?
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅。
官方地址: Overview (hutool - ))
二、使用步骤
1.引入依赖
代码如下(示例):
<dependency> <groupId></groupId> <artifactId>hutool-all</artifactId> <version>${}</version> </dependency>
2.相关方法
2.1
该类提供了日常使用的很多工具方法,开发过程中可以优先在此进行查找。
2.1.1 StrUtil
字符串工具类,涉及String相关的操作;
1) uuid()
生成随机UUID,业务逻辑主键;
static String |
uuid() 生成随机UUID |
2) equals
public static boolean equals(CharSequence str1, CharSequence str2)比较两个字符串(大小写敏感)。
equals(null, null) = true equals(null, "abc") = false equals("abc", null) = false equals("abc", "abc") = true equals("abc", "ABC") = falseParameters:
str1
- 要比较的字符串1
str2
- 要比较的字符串2Returns:
如果两个字符串相同,或者都是
null
,则返回true
3) format
public static String format(CharSequence template, Object... params)格式化文本, {} 表示占位符
此方法只是简单将占位符 {} 按照顺序替换为参数
如果想输出 {} 使用 \\转义 { 即可,如果想输出 {} 之前的 \ 使用双转义符 \\\\ 即可
例:
通常使用:format("this is {} for {}", "a", "b") =》 this is a for b
转义{}: format("this is \\{} for {}", "a", "b") =》 this is {} for a
转义\: format("this is \\\\{} for {}", "a", "b") =》 this is \a for bParameters:
template
- 文本模板,被替换的部分用 {} 表示,如果模板为null,返回"null"
params
- 参数值Returns:
格式化后的文本,如果模板为null,返回"null"
2.1.2 EnumUtil
枚举工具类
1) contains
public static <E extends Enum<E>> boolean contains(Class<E> enumClass, String val)判断某个值是存在枚举中
Type Parameters:
E
- 枚举类型Parameters:
enumClass
- 枚举类
val
- 需要查找的值Returns:
是否存在
2) getFieldNames
public static List<String> getFieldNames(Class<? extends Enum<?>> clazz)获得枚举类中所有的字段名
除用户自定义的字段名,也包括“name”字段,例如:() == ["name", "index"]Parameters:
clazz
- 枚举类Returns:
字段名列表
Since:
4.1.20
3) getNameFieldMap
public static Map<String,Object> getNameFieldMap(Class<? extends Enum<?>> clazz, String fieldName)获得枚举名对应指定字段值的Map
键为枚举名,值为字段值Parameters:
clazz
- 枚举类
fieldName
- 字段名,最终调用getXXX方法Returns:
枚举名对应指定字段值的Map
2.2
Map工具类,Map集合日常工具方法。
2.2.1 empty()
public static <K,V> Map<K,V> empty()
返回一个空Map
Type Parameters:
K
- 键类型
V
- 值类型Returns:
空Map
2.2.2 filter
public static <K,V> Map<K,V> filter(Map<K,V> map, Filter<<K,V>> filter)过滤
过滤过程通过传入的Editor实现来返回需要的元素内容,这个Filter实现可以实现以下功能:1、过滤出需要的对象,如果返回null表示这个元素对象抛弃Type Parameters:
K
- Key类型
V
- Value类型Parameters:
map
- Map
filter
- 过滤器接口,null
返回原MapReturns:
过滤后的Map
2.2.3 sortByValue
public static <K,V extends Comparable<? super V>> Map<K,V> sortByValue(Map<K,V> map, boolean isDesc)按照值排序,可选是否倒序
Type Parameters:
K
- 键类型
V
- 值类型Parameters:
map
- 需要对值排序的map
isDesc
- 是否倒序Returns:
排序后新的Map
2.2.4 valuesOfKeys
public static <K,V> ArrayList<V> valuesOfKeys(Map<K,V> map, Iterator<K> keys)从Map中获取指定键列表对应的值列表
如果key在map中不存在或key对应值为null,则返回值列表对应位置的值也为nullType Parameters:
K
- 键类型
V
- 值类型Parameters:
map
- Map
keys
- 键列表Returns:
值列表
2.2.5 toMapList
public static <K,V> List<Map<K,V>> toMapList(Map<K,? extends Iterable<V>> listMap)列转行。将Map中值列表分别按照其位置与key组成新的map。
是toListMap(Iterable)的逆方法
比如传入数据:{ a: [1,2,3,4] b: [1,2,3,] c: [1] }结果是:
[ {a: 1, b: 1, c: 1} {a: 2, b: 2} {a: 3, b: 3} {a: 4} ]Type Parameters:
K
- 键类型
V
- 值类型Parameters:
listMap
- 列表MapReturns:
Map列表
2.2.6 toListMap
public static <K,V> Map<K,List<V>> toListMap(Iterable<? extends Map<K,V>> mapList)行转列,合并相同的键,值合并为列表
将Map列表中相同key的值组成列表做为Map的value
是toMapList(Map)的逆方法
比如传入数据:[ {a: 1, b: 1, c: 1} {a: 2, b: 2} {a: 3, b: 3} {a: 4} ]结果是:
{ a: [1,2,3,4] b: [1,2,3,] c: [1] }Type Parameters:
K
- 键类型
V
- 值类型Parameters:
mapList
- Map列表Returns:
Map
总结
Hutool工具类库可以作为日常开发过程中的"字典"使用,碰到一些方法可以优先在此进行查找,慢慢的便可对其进行熟悉使用。