容器
1.Collection接口定义了存取一组对象的方法,其子接口set和list分别定义了存储方式;
map接口定义了存储“键(key)-值(value)映射对”的方法,通过一个对象找到另一个对象;
2.List接口
2.1list接口是collection的子接口,实现list接口的容器类中的元素是有顺序的,而且可以重复;
2.2list容器中的元素都对应一个整数型的序号,记载其在容器中的位置,可以根据序号存取容器中的元素;
2.3list常用方法与算法
Object get(int index);//根据序号获取容器中对应的元素
Object set(int index,object Element);//返回旧的元素
void add(int index,object Element);//在不序号为index的地方,添加元素element
object remove(int index);//移除序号为index的元素
int indexof(object o);//返回元素o第一次出现的序号
int lastindexof(object o);//返回元素o最后一次出现的序号
void sort(list)//对list中元素进行升序排序
void shuffle(list)//对list中元素进行随机排列
void reverse(list)//对list中元素进行逆序排序
void fill(list,object)//用一个特定的对象重写整个list容器
void copy(list dest,list src)将list src容器中的内容拷贝到list dest容器中
int binarysearch(list,object)//对于顺序的list容器,采用折半查找的方法查找特定对象
3.set接口
3.1 set接口是collection的子接口,set接口没有呢提供额外的方法,但实现set接口的容器类中的元素是没有顺序的,而且不可以重复
3.2 set接口可以与数学中的集合概念相对应;
3.3 set和list容器类都具有constructor(collection c)构造方法用以初始化容器类 例如:set s1=new hashset();
Set sn=new hashset(s1);
3.4 treeset与hashset的区别
treeset有序,hashset无序
3.5 为什么set中的元素不能重复
add方法实际执行的是map的方法,并且我们添加的是map中的key,value是执行的同一个对象present,因为map中的key不允许重复,所以set中的元素不能重复。
4.map接口
4.1 实现map接口的类用来存储-键值对;
map接口的实现类有hashmap,treemap,linkedhashmap等;
map类中用来存储的键-值对通过键来标识,所以键值不能重复。
4.2 在map中key不能重复,如果重复则被覆盖;
4.3 map的常用方法
Object put(Object key,object value);//将键和值写入map
object get(object key);//利用键获得容器的值
object remove(object key);//利用键删除容器的值
boolean containskey(object key);//容器是否包含键key
boolean containsvalue(object value);//容器是否包含值vlaue
int size();//容器的元素个数
boolean isempty();//容器是否为空
void putall(map t);//将容器t全部添加到本地容器
void clear();//清除容器里的元素