zoukankan      html  css  js  c++  java
  • Java集合框架

    Java集合框架 

    集合框架图

    集合框架图

    Collection接口提供了一组操作成批对象的方法,它提供了基本操作如添加、删除。

    List

    List的最重要的特征就是有序;它会确保以一定的顺序保存元素。

    • ArrayList:一个用数组实现的List。能进行快速的随机访问,但是往列表中间插入和删除元素的时候比较慢。
    • LinkedList:对顺序访问进行了优化。在List中间插入和删除元素的代价也不高。随机访问的速度相对较慢。常用作栈、队列的实现。

    Set

    Set中的对象元素不能重复。

    • HashSet:为优化查询速度而设计的Set,设置散列函数实现索引。要放进HashSet里面的Object还得定义hashCode()。
    • LinkedHashSet集合同样是根据元素的hashCode值来决定元素的存储位置,但是它同时使用链表维护元素的次序。
    • TreeSet是SortedSet接口的唯一实现类,利用红黑树实现排序,TreeSet可以确保集合元素处于排序状态。 

    Map

    键值对。

    • HashMap:基于hash表的实现,对键建立散列值的数组。 

       与hashtable之间的不同

        1.继承不同

          public class Hashtable extends Dictionary implements Map
          public class HashMap  extends AbstractMap implements Map

        2.Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线程并发的环境下,可以直接使用Hashtable。

        3.哈希值的使用不同,HashTable直接使用对象的hashCode。而HashMap重新计算hash值。

    • LinkedHashMap:很像HashMap,但是用Iterator进行遍历的时候,它会按插入顺序或最先使用的顺序(least-recently-used(LRU)order)进行访问。 
    • TreeMap:基于红黑树数据结构的实现。 
  • 相关阅读:
    ionic入门之AngularJS扩展基本布局
    ionic入门之AngularJS扩展(一)
    test
    面试题小整理
    使用Code first 进行更新数据库结构(数据迁移)
    SQL模糊查询与删除多条语句复习
    GridView 根据要求显示指定值
    个人工作记录---工作中遇到的sql查询语句解析
    数据库,inner join,left join right join 的区别
    利用set实现去重
  • 原文地址:https://www.cnblogs.com/mixes/p/4108584.html
Copyright © 2011-2022 走看看