Collection接口:
可以存储一组不唯一,无序的对象
Collection主要有三个子接口,分别为List和
Set
,List存储一组不唯一,有序的对象,Set存储一组唯一,无序的对象。
常用方法如下
用处: | 语法: |
添加元素 | boolean add(Object o) |
将集合c添加到指定集合 | boolean addAll(Object o) |
是否包含指定元素 | boolean contains(Object o) |
清空 | void clear() |
删除元素 | boolean remove(Object o) |
返回长度 | Int size() |
List:
继承自Collection接口,存储一组不唯一有序的对象
在Collection中,List集合常用到ArrayList和LinkedList两个实现类
扩充的方法:
用处: | 语法: |
根据索引获取数据 | Object get(int index); |
修改数据 | Object set(int index,Object elemen); |
ArrayList集合:
1.ArrayList底层是数组结构
2.ArrayList查询效率高,添加删除效率低
ArrayList常用方法如下:
用处: | 语法: |
添加元素(与泛型一致) | public boolean add(E,e); |
获取元素(参数是索引编号) | public E get(int index); |
删除元素(参数是索引编号) | public E remove(int index); |
获取集合长度 | public int size(); |
//获取元素
String a =list.get(索引值);
//删除元素
String a =list.remove(索引值);
//获取集合长度
int length = list.size()
LinkedList集合:
1.LinkedList底层是双向链表
2.插入,删除数据效率高,不便于快速访问数据
LinkedList常用方法如下:
用处: | 语法: |
将指定元素插入此列表的开头/结尾 | public void addFirst/Last(E e) |
返回此列表的第一个/最后一个元素 | public E getFirst()/Last() |
移除并返回此列表的第一个元素 | public E removeFirst()/Last() |
从此列表所表示的堆栈处弹出一个元素 | public E pop() |
如果列表不包含元素,则返回true | public boolean isEmpty() |
//获取指定元素
System.out.print(list.getFirst());
System.out.print(list.getLast());
System.out.print(list.get(2));
//移除指定元素
System.out.print(list.removeFirst());
System.out.print(list.removeLast());
System.out.print(list.remove(2));
System.out.print(list);
System.out.print(list.a());///弹出集合中的栈顶元素
boolean b = list.isEmpty();
System.out.println(b);//判断此集合是否还包含元素,包含为false
Set:
继承自Collection接口,存储一组唯一,无序的对象
在Collection中,Set集合常用到HashSet实现类
HashSet集合:
1.HashSet底层是哈希表结构
HashSet常用方法如下:
用处: | 语法: |
向集合中添加元素 | add(Object obj) |
删除元素 | remove(Object obj) |
清空集合元素 | clear() |
返回Set集合中的元素个数 | .size() |
HashSet<String> set = new HashSet<String>(); //添加元素
set.add("a");
set.add("b");
System.out.println(set);
System.out.println(set.size());//返回Set集合中的元素个数
System.out.println(set.remove("a");//删除元素
set.clear();//清空所有元素
Map接口:
存储一组成对的键-值对象,提供key到value的映射,其中key不要求有序,不允许重复,value不要求有序,但允许重复
Map下有HashMap
HashMap常用方法如下:
用处: | 语法: |
添加数据 | Object put(object key,Object value) |
根据键返回值 | Object get(Object key) |
返回键的集合 | Set keyset() |
返回值的集合 | Collection values() |
泛型:
1.可以约束集合中元素的类型
2.保证类型安全
常用泛型集合:ArrayList<K,V>,HashMap<K,V>等.....
遍历集合:
Iterator:遍历Collection集合元素的统一编程接口
常用方法如下:
用处: | 语法: |
是否存在下一个 | boolean hasNext() |
返回下一个元素 | Object next() |
移除元素 | void remove() |
for:适用于有序集合,如ArrayList,LinkedList等
foreach:适用于所有集合