java集合总结使用场景

集合总结使用场景

在开发中选择什么集合实现类,主要取决于业务操作的特点,然后根据集合实现类特性进行选择:

  • 先判断存储的类型(一组对象(单一)或一组键值对(双列))
  • 一组对象(单列):Collection 接口
    1. 允许重复值:List
      • 增删多:LinkedList(底层是一个双向链表)
      • 改查多:ArrayList(底层是一个数组)
      • 线程安全:Vector :底层是一个数组
    2. 不允许重复值:Set
      • 无序:HashSet:底层是HashMap,维护一个(数组 + 链表 + 红黑树)
      • 排序:TreeSet:TreeMap实现
      • 插入和取出顺序一致:LinkedHashSet底层是LinkedHashMap 是由:数组 +双向链表;
    3. 一组键值对:Map
      • 键无序:HashMap:底层h是Hash表:JDK7:数组 + 链表,JDK8:数组 +链表 + 红黑树
      • 键排序;TreeMap:红黑树
      • 插入和取出的顺序一致:LinkedHashMap :
      • 读取文件:Properties;

你可能感兴趣的:(java学习,java,集合,map,hashmap,linkedlist)