最近更新
阅读排行
关注本站

java集合中的List

阅读:3912 次   编辑日期:20140928

目录:

概述:

最近尽忙结婚的事情了,更新的频率有所下降,今天继续。
在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中,接下来几篇文章主要讲讲java集合,今天讲讲java集合中的List。

什么是List:

List可以理解为列表,是一个接口,不能实例化,需要实例化一个ArrayList或者LinkedList,List 集合中的对象按照一定的顺序排放,里面的内容可以重复
次序是List最重要的特点:它保证维护元素特定的顺序。List为Collection添加了许多方法,使得能够向List中间插入与移除元素(这只推 荐LinkedList使用。)一个List可以生成ListIterator,使用它可以从两个方向遍历List,也可以从List中间插入和移除元 素。

List接口主要实现类:

List接口主要实现类包括:
ArrayList() : 代表长度可以改变得数组。可以对元素进行随机的访问,向ArrayList()中插入与删除元素的速度慢。
LinkedList(): 在实现中采用链表数据结构。插入和删除速度快,访问速度慢。
List 的 get(int index) 方法放回集合中由参数index指定的索引位置的对象,下标从“0” 开始。

List检索集合中的所有对象的方法:

最基本的两种检索集合中的所有对象的方法:
    //for循环和get()方法:
   for(int i=0; i<list.size();i++){
     System.out.println(list.get(i));
    }
    //for循环和get()方法:
    Iterator it=list.iterator();
    while(it.hashNext()){
        System.out.println(it.next());
    }

ArrayList与LinkedList 的区别:

ArrayList:由数组实现的List。允许对元素进行快速随机访问,但是向List中间插入与移除元素的速度很慢。ListIterator只应该用来由后向前遍历 ArrayList,而不是用来插入和移除元素。因为那比LinkedList开销要大很多。
LinkedList :对顺序访问进行了优化,向List中间插入与删除的开销并不大。随机访问则相对较慢。(使用ArrayList代替。)还具有下列方 法:addFirst(), addLast(), getFirst(), getLast(), removeFirst() 和 removeLast(), 这些方法 (没有在任何接口或基类中定义过)使得LinkedList可以当作堆栈、队列和双向队列使用。
将本篇文章分享到:
top