基本接口:Collection
接口: List
实现类:ArrayList LinkedList
接口:Set(唯一,无序)
实现类:HashSet(哈希) TreeSet
Map接口:Map
实现类:HashMap
----------------------------------------------------------------------
ArrayList类
特点:长度可变,连续空间,任意类型,类型相同
适用情况:适合多次遍历集合
方法:
boolean add(Object o) 在集合末尾添加元素
void add(int index,Object o) 在指定位置添加元素
int size() 返回集合中元素个数
Object get(int index) 根据位置返回集合元素
---------------------------------------------------------------------------
LinkedList类
特点:链表形式
使用情况:插入 删除 效率高
方法:
void addFirst(); 在集合首部添加一个元素
void addLast(); 在集合末尾添加一个元素
Object getFirst(); 获取第一个元素
Object getLast(); 获取最后一个元素
Object removeFirst(); 移除并返回第一个元素
Object removeLast(); 移除并返回最后一个元素
--------------------------------------------------------------------------------
HashSet类
特点:唯一,无序,可以存放null
使用情况:不知道数据索引的情况的使用
方法:
boolean add(Object o) 如果此Set中没有指定元素,则在集合添加元素
-------------------------------------------------------------------------------
Iterator接口(迭代器)
特点:实现各种集合遍历操作
获取方法:使用集合类对象调用iterator()方法 返回Iterator对象
Iterator it=list.iterator();
方法:
boolean hasNext() 判断是否存在下一个可访问的元素,如果有,则true
Object next() 返回要访问的下一个元素
-------------------------------------------------------------------------------
HashMap类
特点:存储一组成对的键(key)值(value)对象,key不允许重复
适用情况:有对应关系的时候可以用
方法:
Object put(Object key,Object value) 将key与value放入集合
Object get(Object key) 获取与key相关的value
Set keySet() 获取所有key的集合
Collection values() 获取所有value的集合
boolean containsKey(Object key) 判断集合中是否存在key
boolean containsValue(Object value) 判断集合中是否存在value
--------------------------------------------------------------------------------
Collections操作类
特点:可以对集合进行排序,查找和替换等。
Collections.sort(集合); 升序排序
Collections.binarySearch(集合,集合内某一个元素); 元素查找
Collections.fill(集合,用来替换的新元素); 替换元素
-------------------------------------------------------------------------
泛型
语法:集合类型<实际类型> 集合对象=new 集合类型<实际类型>();
注意点:
1.使用list.get()方法时返回的是Object类型,需要强制类型转换为对应的数据类型
2.Set接口不存在get()方法