龙空技术网

GitHub精选 | 一个小而全的Java工具类库

GitHub精选 2746

前言:

而今看官们对“java系统类库”大致比较看重,朋友们都需要剖析一些“java系统类库”的相关文章。那么小编在网络上收集了一些对于“java系统类库””的相关知识,希望你们能喜欢,同学们快快来了解一下吧!

《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个Java工具类库——Hutool。

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅。Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。

Hutool包含的组件:

依赖:

Maven

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.13</version></dependency>
Gradle
implementation 'cn.hutool:hutool-all:5.7.13'

示例:

类型转换工具类-Convert

Convert类封装了针对Java常见类型的转换,用于简化类型转换。

/*** 转换为字符串*/int a = 1;//aStr为"1"String aStr = Convert.toStr(a);long[] b = {1,2,3,4,5};//bStr为:"[1, 2, 3, 4, 5]"String bStr = Convert.toStr(b);
/*** 转换为集合*/Object[] a = {"a", "你", "好", "", 1};List<?> list = Convert.convert(List.class, a);//从4.1.11开始可以这么用List<?> list = Convert.toList(a);
日期时间工具-DateUtil

DateUtil封装的主要是日期和字符串之间的转换,以及提供对日期的定位(一个月前等等)

/*** Date、long、Calendar之间的相互转换*///当前时间Date date = DateUtil.date();//当前时间Date date2 = DateUtil.date(Calendar.getInstance());//当前时间Date date3 = DateUtil.date(System.currentTimeMillis());//当前时间字符串,格式:yyyy-MM-dd HH:mm:ssString now = DateUtil.now();//当前日期字符串,格式:yyyy-MM-ddString today= DateUtil.today();
文件工具类-FileUtil

FileUtil类包含以下几类操作工具:

文件操作:包括文件目录的新建、删除、复制、移动、改名等文件判断:判断文件或目录是否非空,是否为目录,是否为文件等等。绝对路径:针对ClassPath中的文件转换为绝对路径文件。文件名:主文件名,扩展名的获取读操作:包括类似IoUtil中的getReader、readXXX操作写操作:包括getWriter和writeXXX操作唯一ID工具-IdUtil

/*** 生成UUID*///生成的UUID是带-的字符串,类似于:a5c8a5e8-df2b-4706-bea4-08d0939410e3String uuid = IdUtil.randomUUID();//生成的是不带-的字符串,类似于:b17f24ff026d40949c85a24f4f375d42String simpleUUID = IdUtil.simpleUUID();
/*** 生成Snowflake*///参数1为终端ID//参数2为数据中心IDSnowflake snowflake = IdUtil.getSnowflake(1, 1);long id = snowflake.nextId();
信息脱敏工具-DesensitizedUtil
// 身份证号5***************1XDesensitizedUtil.idCardNum("51343620000320711X", 1, 2);// 手机号180****1999DesensitizedUtil.mobilePhone("18049531999");

更多内容请大家自行前往阅读Hutool参考文档。

Gitee:

hutool: 小而全的Java工具类库,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

标签: #java系统类库