今年快结束了,码了一年的代码了,来个年终总结,总结下自己写的那些代码,就算是重复造轮子,我也的得看看这轮子滚过的车辙印不是!今天我们就来总结下那些好用,但是常被我们忽略的工具类
- BeanUtils
- 这个apache下的老伙计相信大家都熟悉,主要用于bean的操作,支持把entity的属性复制到另外一个entity中去,支持同类之间不同对象要求进行数据复制、不同类不同对象之间的数据复制、对象数据和Map之间互相转化
- CollectionUtils
- 集合操作工具类,支持集合非空判断、集合添加、删减,以及一个我觉得很好用的(intersection(a,b))交集、(disjunction) 补集 、(subtract(a,b))差集、(union(a,b))并集、(unmodifiableCollection(a))不可修改的集合等操作;这个方法可以得到一个集合的镜像,它的返回结果是不可直接被改变,否则会提示错误
- FileUtils
- 文件操作工具类,除了最常见文件读写,还支持追加写入、写入多行、文件复制、文件移动、文件下载(copyURLToFile())等操作,比起原生文件操作写法就更便捷方便
- StringUitls
- 我想这个应该是大家用的最多的工具类了,方便便捷,主要用于字符串操作,非空判断(包括为空或长度为0或空白符)、去除首尾空白字符( trim ())、获取某个字符第一次出现的下标(indexOf())、去除去掉 str 两端的在 stripChars 中的字符(strip(String str, String stripChars) )
- IOUtils
- 这个工具类某些功能和 FileUitls 有些重合了,但这并不妨碍我们去使用他, IOUtils 相对于 FileUtils 来说操作更细致,我一般主要用于流的操作包括基础的流的读写
//把数据写入输出流
IOUtils.write(“abc”, outputStream);
//把 字符串 转换流
inputStream inputStream = IOUtils.toInputStream(“aaaaaaaaa”, “UTF-8”);
//流的复制
IOUtils.copy(inputstream,outputstream);
//优雅的关闭流 (装逼使用)
IOUtils.closeQuietly(inputStream);
//把流转为字节数组
IOUtils.toByteArray(InputStream input) - FilenameUtils
- getExtension:返回文件后缀名
- getBaseName:返回文件名,不包含后缀名
- getName:返回文件全名
- concat:按命令行风格组合文件路径(详见方法注释)
- removeExtension:删除后缀名
- normalize:使路径正常化
- wildcardMatch:匹配 通配符
- seperatorToUnix:路径分隔符改成unix系统格式的,即/
- getFullPath:获取文件路径,不包括文件名
- isExtension:检查文件后缀名是不是传入参数(List<String>)中的一个