集合、list、迭代、linkedList

来源:互联网 发布:软件开发项目风险 编辑:程序博客网 时间:2024/05/29 02:47

集合类

定义:用于存储对象最常用的一种方式

集合类与数组的比较:

数组和集合类同是容器,数组虽然也可以存储对象,但是长度固定,而集合类为可变长度,数组可存储基本数据类型,集合只存放对象,而且可以存放不同类型的对象。

 

集合框架中的常用接口

Collection接口有两个子接口:

List(列表)     Set(集)

 

List:可存放重复元素,元素存放是有序的

Set:不可存放重复元素,元素存放是无序的。

 

List接口中常用类

Vector:线程安全,但速度慢,已被ArrayList类所替代

ArrayList:线程不安全,查询速度快

LinkedList:链表结构,增删速度快

 

常用方法

     add()方法的参数类型是object,便于任何类型的对象

     remove( )

     clear( )

     contains( ) 判断元素是否存在

     empty( ) 判断是否为空

      retainAll( ) 取交集

     removeAll( )

 

特有方法

     

add(index,elemt);

addAll(index,Collection)

     

remove( index );

     

set( index , elemt );

     

get(index )

subList(From,To)

ListIteator();

 

List集合中元素的方式

get(int index):通过角标获取元素

iterator( ):通过迭代方法获取迭代哭的对象

 

迭代

迭代是取出元素的一种方式

因为Collection中有iterator( )方法,所以每一个子类集合对象都具备的迭代器。

 

用法:

for(Iterator iter = iterator(); iter.hasNext();  ){

        iter.next();

}

Iterator iter = 集合类.iterator();

while(iter.hasNex){ iter.next(); }

 

迭代注意事项

迭代器在Collection接口中是通用的,它替代了Vector类中的Enumeration(枚举)

迭代器的next()方法是自动向下取元素,要避免出现NoSuchElementException

迭代器的next()方法返回值类型是Object,所以要记得类型转换。

 

LinkedList特有方法

addFirst()        getFirst()        removeFirst()

addLast()        getLast()        removeLast()

JDK1.6以后出现的替代方法

offerFirst()              peekFirst()             pollFirst()

offerLast()              peekLast()             pollLast()

原创粉丝点击