Guava中集合工具简介

前言

Java开发人员想必都听说过Guava的大名。它是Google提供的开源的Java核心增强库,包含集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O 等等内容。Guava能够提高编码效率,减少编码错误,其应用范围非常广泛。本篇文章,主要介绍Guava(本文使用的Guava版本为:26.0)提供的集合相关的工具类,希望能够为大家在工作中操作集合时提供另一种更高效的选择。

新集合类型

Guava引入了很多JDK没有的、但实际使用场景上明显有用的新集合类型。

BiMap
  • 关于
    BiMap提供了一种新的集合类型,它提供了key和value的双向关联的数据结构。通常情况下,我们在使用Java的Map时,往往是通过key来查找value的,但是如果我们想根据value值查找key时,我们就需要额外编写一些代码来实现这个功能。BiMap为我们实现了这个功能。
  • 实现
实现 key-value的实现 value-key的实现
HashBiMap HashMap HashMap
ImmutableBiMap ImmutableMap ImmutableMap
EnumBiMap EnumMap EnumMap
EnumHashBiMap HashMap HashMap
  • 使用示例
@Test
public void test1(){
    BiMap<String,String> weekNameMap = HashBiMap.create();
    weekNameMap.put("星期一","Monday");
    weekNameMap.put("星期二","Tuesday");
    weekNameMap.put("星期三","Wednesday");
    weekNameMap.put("星期四","Thursday");
    weekNameMap.put("星期五","Friday");
    weekNameMap.put("星期六","Saturday");
    weekNameMap.put("星期日","Sunday");
    System.out.println("星期日的英文名是" + weekNameMap.get("星期日"));
    System.out.println("Sunday的中文是" + weekNameMap.inverse().get("Sunday"));
}
  • 源码

参考资料

  1. Guava github
  2. Guava guide
  3. Guava docs
  4. 并发编程网-Guava官方教程
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 欢迎来到阿斯夫防腐地坪厂家刘桂绫第五十九篇日记 今天早上一直忙着整理防腐地坪描述版本,之前整理了二十个版本,感觉还...
    55a50d532804阅读 1,549评论 0 1
  • 想着一个人在想一个人 那些恋人说 要在秋天 看看熟透的红柿子 会再等等 等到它被吃之前 品尝香甜 等到它腐烂之前 ...
    安通阅读 1,009评论 0 0

友情链接更多精彩内容