小编这有自学的过程中有一些资源可以免费共享,学习交流领全套资料加群853665602哦
【内涵Java学习80g视频,大厂面试题库,Java学习书籍,或者技术指导】
加微信领取【备注555】
工作很多年的老编程和我说后,才发现有很多工具类库,可以大大简化代码量,提升开发效率,初级开发者却不知道。而这些类库早就成为了业界标准类库,大公司的内部也都在使用,如果刚工作的时候就有人告诉我使用这些工具类库,该多好!
一块看一下有哪些工具类库你也用过。
1. Java自带工具方法
1.1 List集合拼接成以逗号分隔的字符串
1.2 比较两个字符串是否相等,忽略大小写
1.3 比较两个对象是否相等
当我们用equals比较两个对象是否相等的时候,还需要对左边的对象进行判空,不然可能会报空指针异常,我们可以用java.util包下Objects封装好的比较是否相等的方法
源码是这样的
1.4 两个List集合取交集
2. apache commons工具类库
apache commons是最强大的,也是使用最广泛的工具类库,里面的子库非常多,下面介绍几个最常用的
2.1 commons-lang,java.lang的增强版
建议使用commons-lang3,优化了一些api,原来的commons-lang已停止更新
Maven依赖是:
2.1.1 字符串判空
传参CharSequence类型是String、StringBuilder、StringBuffer的父类,都可以直接下面方法判空,以下是源码:
2.1.2 首字母转成大写
2.1.3 重复拼接字符串
2.1.4 格式化日期
再也不用手写SimpleDateFormat格式化了
2.1.5 包装临时对象
当一个方法需要返回两个及以上字段时,我们一般会封装成一个临时对象返回,现在有了Pair和Triple就不需要了
2.2 commons-collections 集合工具类
Maven依赖是:
2.2.1 集合判空
封装了集合判空的方法,以下是源码:
2.3 common-beanutils 操作对象
Maven依赖:
设置对象属性
对象和map互转
2.4 commons-io 文件流处理
Maven依赖:
文件处理
3. Google Guava 工具类库
Maven依赖:
3.1 创建集合
3.2 黑科技集合
3.2.1 Multimap 一个key可以映射多个value的HashMap
多省事,多简洁,省得你再创建 Map<String, List>
3.2.2 BiMap 一种连value也不能重复的HashMap
这其实是双向映射,在某些场景还是很实用的。
3.2.3 Table 一种有两个key的HashMap
3.2.4 Multiset 一种用来计数的Set
以上为个人经验,希望能给大家一个参考,如有错误或未考虑完全的地方,再评在评论区留言,望不吝赐教。
最近小编在大神哪里买下了几十套阿里、头条、腾讯和美团等公司2020-2021年金三银四的面试题,把技术点整理成了视频+文档(总计20G,实际上比预期多花了不少精力),包含知识脉络 + 诸多细节【需要的小伙伴,可以在评论下扣1,或者加我助理微信】备注555