安装(Maven)
1  | <dependency>  | 
用法介绍
这里只介绍一些我觉得经常用和有意思的用法,具体的用法参见参考文档
类型转换
- 转换字符串
 
1  | long[] b = {1,2,3,4,5};  | 
- 转换为指定类型数组
 
1  | String[] b = { "1", "2", "3", "4" };  | 
- 转换为日期对象
 
1  | String a = "2017-05-06";  | 
- 编码转换
 
1  | String a = "我不是乱码";  | 
- 时间单位转换
 
1  | //主要用于转换时长单位,比如一个很大的毫秒,我想获得这个毫秒数对应多少分  | 
IOUtil
拷贝
1  | BufferedInputStream in = FileUtil.getInputStream("d:/test.txt");  | 
RuntimeUtil
execForStr执行系统命令,返回字符串execForLines执行系统命令,返回行列表
1  | String str = RuntimeUtil.execForStr("ipconfig");  | 
IdUtil
1  | //生成的UUID是带-的字符串,类似于:a5c8a5e8-df2b-4706-bea4-08d0939410e3  | 
Assert断言
Java中有assert关键字,但是存在许多问题:
- assert关键字需要在运行时候显式开启才能生效,否则你的断言就没有任何意义。
 - 用assert代替if是陷阱之二。assert的判断和if语句差不多,但两者的作用有着本质的区别:assert关键字本意上是为测试调试程序时使用的,但如果不小心用assert来控制了程序的业务流程,那在测试调试结束后去掉assert关键字就意味着修改了程序的正常的逻辑。
 - assert断言失败将面临程序的退出。
 
相应的,在Hutool中封装了更加友好的Assert类,用于断言判定。
- isTrue 是否True
 - isNull 是否是null值,不为null抛出异常
 - notNull 是否非null值
 - notEmpty 是否非空
 - notBlank 是否非空白符
 - notContain 是否为子串
 - noNullElements 数组中是否包含null元素
 
Base64编码解码
1  | String a = "我是一个非常长的字符串";  |