容器知识总结:
1、Collection接口
Collection接口中的常用方法:
Size()
isEmpty()
clear()
contains()
add()
remove()
iterator():返回其指针
2、List(ArrayList & LinkedList):继承自Collection,增加了以下常用方法:
get(int index)
set(int index,Object element):设置值,与add不同
indexof(Object o):返回索引
3、Set(HashSet & TreeSet):继承自Collection,没有增加额外方法;
4、Map(HashMap & TreeMap):常用方法如下:
put(Object key,Object value)
get(Object key)
remove(Object key)
boolean containsKey(Object key)
boolean containsValue(Object value)
int size()
Boolean isEmpty()
clear()
5、Collections类:提供了一些静态方法实现了基于List容器的一些常用算法:
void sort(List):排序
void reverse(List):翻转
void shuffle(List):随机排序
void fill(List,Object):用特定对象重写List
void copy(List desc,List src):将src拷贝到desc
int binarySearch(List, Object):对于顺序的List容器,采用折半查找方法查找特定对象
6、Iterator接口:每个Collection接口及其子接口,都有iterater()方法返回其对象的指针。指针开始位置为第一个元素的左边。这个接口只有三个方法:
Boolean hasNext():指针右侧是否有元素
E next():返回指针右侧的这个元素
Void remove():删除指针左边的元素,在执行完next后该操作只能执行一次
7、Comparable接口:要对比容器之间的大小,经常会继承Comparable接口,并重写其comparaTo方法,定义比较规则即可:
Java.lang.Comparable(注意是java.lang包下的接口)
public int compareTo(Object obj):
返回0:表示:this = obj
返回正数:表示:this > obj
返回负数:表示:this < obj
8、Collection与Collections区别:
Collection是list和set的父接口,而Collections仅仅为List接口提供了一些常用的工具方法
总体来说,就是记住一个图:
Set:无顺序,不可重复
List:有顺序,可重复
Map:存储key-value测试测试