Java集合类

一、集合类(Collection):

  1)用于存储对象;长度可变;存储不同类型对象;

  2)集合类和数组的区别:

    (1)数组长度不变;集合类可变;

    (2)数组中数据都是同类型;集合类可以不同;

二、集合框架的构成和分类

   

分享图片

三、常用接口:

1List(列表):可存放重复元素,元素存取是有序的;该集合体系有索引

2Set(集合):不可存放重复元素,元素存取是无序的;该集合体系没有索引

  //无序:存入和取出的顺序不一致;

四、List中常用类:

 1.ArrayList数组结构;线程不同步,增删速度慢,查询速度快。1.2jdk

 2.LinkedList链表结构;增删速度快,查询速度慢。

 3.Vector数组结构;线程同步;已被ArrayList替代;1.0jdkcolleciton—1.2jdk

//Vector特有方法名包含element

//Vector枚举:elements;实现Enumeration;枚举和迭代器相似;

4.Stack//了解;

五、Set中常用类:

1.HashSet:哈希表结构;线程不同步;通过hashCodeequals方法保证数据的唯一性;如果hashCode相同才判断元素equals

2.LinkedHashSet

3.TreeSet二叉树自然顺序排序;通过compareto或者compare方法保证元素唯一性;元素以二叉树形式存放;

 TreeSet的两种排序:

1)实现Comparable接口:根据compareto的返回值排序;

2)实现Comparator接口:根据compare的返回值排序;

//两种比较器都存在时,第2种优先于第1种;

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...