美文网首页
Java集合

Java集合

作者: 西部农民 | 来源:发表于2017-06-11 22:08 被阅读0次

原文地址:http://www.logicbig.com/tutorials/core-java-tutorial/java-collections/java-collection-cheatsheet/
翻译类型:参考总结
文章状态:草稿
绘图工具 : Gliffy (Chrome扩展)

我为人人,人人为我,多多指正,多多建议,不断完善,共建社区,编不下去了~

1.Java集合接口

interface1.png

2.如何选择

2.1一般集合的选择

howtochoose.png

2.2 队列

队列的选择其实比较直观,队列的remove()方法在删除一个元素的同时会返回被删除的元素。如果你需要按特定顺序排列的队列,选择PriorityQueue,否则选择ArrayQueue。

2.3 是否需要线程安全?

当你需要线程安全安全的集合类时,你应该通过以下方法将一个非线程安全的集合转换成一个线程安全的集合:
Collection<T> synchronizedCollection(Collection<T> c)
Set<T> synchronizedSet(Set<T> s)
SortedSet<T> synchronizedSortedSet(SortedSet<T> s)
NavigableSet<T> synchronizedNavigableSet(NavigableSet<T> s)
List<T> synchronizedList(List<T> list)

以上方法,会将所有方法都同步化(在'this'上加锁),这种一刀切的方法性能上不太好,当需要强调性能的时候,我们应当使用java.util.concurrent包中相应的集合实现类。我会在另一篇文章中详细介绍java.util.concurrent中的集合类。

2.4 只读的集合

有些时候,我们需要将一个集合设置成只读:
Collection<T> unmodifiableCollection(Collection<T> c)
Set<T> unmodifiableSet(Set<T> s)
SortedSet<T> unmodifiableSortedSet(SortedSet<T> s)
NavigableSet<T> unmodifiableNavigableSet(NavigableSet<T> s)
List<T> unmodifiableList(List<T> list)

3.集合实现类明细

实现类 接口 是否线程安全 允许重复 允许null 顺序
ArrayList List 插入顺序
LinkedList List, Deque 插入顺序
Vector List 插入顺序
Stack List 继承Vector LIFO
HashSet Set 不保证顺序
LinkedHashSet Set 插入顺序
TreeSet Set Comparator或Comparable
EnumSet Set 枚举类型的定义顺序
PriorityQueue Queue Comparator或Comparable
ArrayDeque Deque 插入顺序

相关文章

  • 一篇文章,全面解读Android面试知识点

    Java Java基础 Java集合框架 Java集合——ArrayList Java集合——LinkedList...

  • 收藏夹

    博文 Java 集合:Java 集合学习指南 Java 集合:Java 集合源码剖析 HashMap:HashMa...

  • Java 集合框架_开篇

    Java 集合框架系列 Java 集合框架_开篇Java 集合框架_ListJava 集合框架_ArrayList...

  • Java 集合框架_List

    Java 集合框架系列 Java 集合框架_开篇Java 集合框架_ListJava 集合框架_ArrayList...

  • 9、java集合

    1、什么是java集合 java集合是用来存储多个数据引用的数据类型。 2、java集合分类 java集合类在ja...

  • 【集合框架】

    集合框架(怎么实现、适用场景) hash相关 Java集合框架 Java集合框架综述Java集合框架面试问题集锦 ...

  • Java基础——集合体系Map详解

    Java基础——集合体系Map详解 上文中我们了解了集合体系中的单列集合:Java基础——集合以及Java集合——...

  • Java基础

    Java集合框架 一、Java集合类简介: Java集合大致分为四种体系:Set:无序、不可重复的集合List:有...

  • JavaSE集合类

    JavaSE集合类 概述 Java中集合类概述Java中数组与集合的比较Java中集合框架层次结构 Collect...

  • 集合系列(一):集合框架概述

    集合系列(一):集合框架概述 Java 集合是 Java API 用得最频繁的一类,掌握 Java 集合的原理以及...

网友评论

      本文标题:Java集合

      本文链接:https://www.haomeiwen.com/subject/ehtkqxtx.html