Java集合框架(JCF) 发表于 2021-06-20 | 更新于 2021-06-22 | 分类于 Java | 评论数: | 阅读次数: Java集合框架(JCF) java的集合框架可以用如下图表示: 具体来讲,有如下关系: 1234567891011121314151617181920|----Collection接口:单列集合,用来存储一个一个的对象 |----List接口:存储有序的、可重复的数据。(jdk1.2) |----ArrayList:作为List接口的主要实现类;线程不安全的,效率高;底层使用Object[] elementData存储(jdk1.2) |----LinkedList:对于频繁的插入、删除操作,使用此类效率比ArrayList高;底层使用双向链表存储(jdk1.2) |----Vector:作为List接口的古老实现类;线程安全的,效率低;底层使用Object[] elementData存储(jdk1.0) |----Stack |----Set接口:存储无序的、不可重复的数据。 |----HashSet:作为Set接口的主要实现类;线程不安全的;可以存储null值 |----LinkedHashSet:作为HashSet的子类;遍历其内部数据时,可以按照添加的顺序遍历对于频繁的遍历操作,LinkedHashSet效率高于HashSet. |----TreeSet:可以按照添加对象的指定属性,进行排序. |----Queue队列 |----PriorityQueue |----Deque |----Map接口:双列集合,用来存储一对(key - value)一对的数据。jdk1.2 |----HashMap:作为Map的主要实现类;线程不安全的,效率高;存储null的key和value。 jdk1.2 |----LinkedHashMap:保证在遍历map元素时,可以按照添加的顺序实现遍历。jdk1.4 |----TreeMap:保证按照添加的key-value对进行排序,实现排序遍历。此时考虑key的自然排序或定制排序,底层使用红黑树 |----Hashtable:Hashtable:作为古老的实现类;线程安全的,效率低;不能存储null的key和value jdk1.0 |----Properties:常用来处理配置文件。key和value都是String类型 支持一下^-^ 打赏 微信支付 支付宝