Javaoop——集合框架

来源:互联网 发布:小学英语跟读软件 编辑:程序博客网 时间:2024/04/27 09:56
第七章  集合框架
1.如果并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象——可以使用Java集合框架
2.Java集合框架提供了一套性能优良,使用方便的接口和类,他们位于Java.util包中
3.(1)接口

  (2)具体类
  (3)算法:collection——提供对集合进行排序,遍历等多种算法实现
注:collection接口存储一组不唯一,无序的对象;
List接口存储一组唯一,有序(插入顺序)的对象;
Set接口存储一组唯一,无序的对象
4.(1)Map接口存储一组键值对象,提供keyvalue的映射 
   (2)ArrayList实现了长度可变的数值,在内存中分配连续的空间(遍历元素和随机访问元素的效率比较高
5.List的常用方法
方法名说明boolean add(Object  o)

在列表的末尾顺序添加元素,

起始索引位置从0开始

voidadd(intindex,Object o)

在指定的索引位置添加元素。

索引位置必须介于0和列表中元素个数之间

intsize()

返回列表中的元素个数

Objectget(intindex)

返回指定索引位置处的元素。取出的元素是Object类型,使用前需要进行强制类型转换

boolean contains(Object o)

判断列表中是否存在指定元素

boolean remove(Object o)

从列表中删除元素

Object  remove(int index)

从列表中删除指定位置元素,

起始索引位置从0开始

注:LinkedList提供对头部和尾部元素进行添加和删除操作的方法
6.LinkedList的特殊方法
方法名说明

void addFirst(Objecto)

在列表的首部添加元素

void addLast(Objecto)

在列表的末尾添加元素

Object getFirst()

返回列表中的第一个元素

Object getLast()

返回列表中的最后一个元素

Object removeFirst()

删除并返回列表中的第一个元素

Object removeLast()

删除并返回列表中的最后一个元素


7.Map的常用方法
方法名说明

Objectput(Object key, Objectval)

以“键-值对”的方式进行存储

Objectget (Object key)

根据键返回相关联的值,如果不存在指定的键,返回null

Objectremove (Object key)

删除由指定的键映射的“键-值对”

intsize()

返回元素个数

SetkeySet ()

返回键的集合

Collectionvalues ()

返回值的集合

boolean containsKey(Object key)

如果存在由指定的键映射的“键-值对”,返回true

8.集合类对比
(1)VectorArrayList的异同
 实现原理、功能相同,可以互用
 主要区别:•Vector线程安全,ArrayList重速度轻安全,线程非安全
长度需增长时,Vector默认增长一倍,ArrayList增长50%
(2)Hashtable和HashMap的异同
 实现原理、功能相同,可以互用
 主要区别:•Hashtable继承Dictionary类,HashMap实现Map接口
Hashtable线程安全,HashMap线程非安全
Hashtable不允许null值,HashMap允许null
9.迭代器Iterator
方法1:通过迭代器Iterator实现遍历 
  获取IteratorCollection接口的iterate()方法
 Iterator的方法
booleanhasNext():判断是否存在另一个可访问的元素
Object next():返回要访问的下一个元素
方法2:增强型for循环

for(元素类型元素变量x :数组或集合对象){

         引用了xjava语句

}

注:两者同样可以遍历其他集合类,通常使用增加for型循环





 


0 0
原创粉丝点击