1、概念

对象的容器,定义了对多个对象进行操作的常用方法,类似数组功能

同数组区别:

  • 数组长度固定,集合长度不固定
  • 数组可以存储基本类型和引用类型,集合只能存储引用类型

位置:java.util.*

2、集合(Collection)体系

基础类:List列表、Set集合、Map映射

  • List:ArrayList、LinkedList
  • Set:HashSet、TreeSet、Comparator接口
  • Map:HashMap,TreeMap,HashTable

Java集合 - 图1

Set和List的区别:

  • Set接口实例存储是无序的,不重复的数据;List接口实例存储是有序的,可重复的元素
  • Set索引效率低下,删除和插入效率高;插入和删除不会引起元素位置的改变
  • List和数组类似,可以动态的增长,依据实际存储的数据长度会自动的去增加List的长度;查找元素效率高,插入删除效率低,会引起其他元素位置的改变