转载

学习 Guava(三):集合

集合工具类

Lists

Lists.newArrayList(); // ①  
Lists.newArrayListWithCapacity(10); // ②  
Lists.newLinkedList(); // ③  
Lists.newCopyOnWriteArrayList(); // ④

① 创建一个 ArrayList 对象,底层实现是数组

② 创建一个指定初始大小的 ArrayList 对象

③ 创建一个 LinkedList 对象,底层实现是链表

④ 创建一个 CopyOnWriteArrayList 对象,参考: 并发编程网 - 聊聊并发:Java中的 Copy-On-Write 容器

Sets

Sets.newHashSet(); // ①  
Sets.newLinkedHashSet(); // ②  
Sets.newTreeSet(); // ③  
Sets.newConcurrentHashSet(); // ④  
Sets.newCopyOnWriteArraySet(); // ⑤

① 创建一个 HashSet 对象,底层实现是哈希表

② 创建一个 LinkedHashSet 对象,底层实现是哈希表和链表。与 HashSet 的实现不同的是,LinkedHashSet 维护了一条双向链表保存元素值,保证了插入顺序

③ 创建一个 TreeSet 对象,底层实现是红黑树

④ 创建一个线程安全的 Set 对象,实际上是在 ConcurrentHashMap 基础上实现的

⑤ 创建一个 CopyOnWriteArraySet 对象,参考: 并发编程网 - 聊聊并发:Java中的 Copy-On-Write 容器

集合运算的 :chestnut::

TODO

Maps

TODO

数据结构

TODO

原文  http://dyingbleed.com/guava-3/
正文到此结束
Loading...