`
newspringwork
  • 浏览: 99001 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Java集合类-简介

 
阅读更多

一、简介

1.Java集合框架

在Java中有一套设计优良的接口和类组成了Java集合框架,使程序员操作成批的数据或对象元素极为方便。所有的Java集合都在java.util包中。

  • Collection接口,这个集合接口体系下主要包括List、Set、Queue接口,主要实现类有Vector、ArrayList、LinkedList、HashSet、TreeSet
  • Map接口,这个集合接口主要是以key-value形式存储,key不能重复,value可以重复,主要的实现类有HashMap、TreeMap
  • util包中还提供了集合工具类Collections & 数组工具类Arrays
  • Iterator接口,用于遍历集合元素

2.Java集合框架图

java集合框架图

 

二、相关接口实现类介绍

这里仅仅只是介绍一些常用的集合类以及特性,一些原理这篇捕捉介绍

1.List接口

有序的集合类,元素可重复,下面是一些典型的实现类:

  • ArrayList-内部是数组实现的,适合随机访问和遍历,不太适合频繁的插入、删除
  • LinkedList-是链式数据结构,适合数据的动态插入、删除,不适合随机访问和遍历
  • Vector-内部是数组实现的,同时因为其是线程安全的,因此会比ArrayList慢
  • Stack-Vetor子类,实现了后进先出的数据结构

2.Set接口

存储的元素不能重复,而判断两个对象是否相同是用equals方法

  • HashSet-根据元素的hashCode值来决定元素的存储位置,不是线程安全的,存储对象时,应重写equals方法同时也应该重写hashCode方法,equals中用来比较的的属性也应该用来计算hashCode的值
  • LinkedHashSet-同样是根据元素的hashCode值来决定元素的存储位置,但是它同时使用链表维护元素的次序,这样使得元素看起 来像是以插入顺序保存的,也就是说,当遍历该集合时候,将会以元素的添加顺序访问集合的元素。
  • TreeSet-有序集合,支持自然排序(Comparable接口)和定制排序(Comparator接口)

3.Queue接口

一种队列数据结构的接口

 

4.Map接口

一种key-value结构的集合接口

  • HashMap-是基于“拉链法”实现的散列表。底层采用“数组+链表”实现
  • HashTable-线程安全的,所以会比HashMap慢
  • TreeMap-有序散列表,实现SortedMap 接口,底层通过红黑树实现

三、参考文章链接:

集合框架图参考了下面的文章-> http://blog.csdn.net/frankarmstrong/article/details/56003697

 

  • 大小: 64.5 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics