java 集合框架 List相关接口

AbstractCollection

此类提供 Collection 接口的骨干实现,以最大限度地减少了实现此接口所需的工作。 还有两个抽象方法,具体的迭代器,具体的Collection 的大小

    public abstract Iterator<E> iterator();

    public abstract int size();
   //这里add 是实现方法,而不是已抽象方法的方式呢       /*     To implement an unmodifiable collection, the programmer needs only to*     extend this class and provide implementations     for the iterator and size methods    To implement a modifiable collection, the programmer must additionally  override this class‘s add method     为了实现一个不可修改的集合,程序员只需要扩展这个类并提供iteratorsize方法的实现。 ( iterator方法返回的迭代器必须实现hasNextnext )

  要实现可修改的集合,程序员必须另外覆盖此类的add方法(否则将抛出UnsupportedOperationException ),并且由iterator方法返回的迭代器必须另外实现其remove方法。

    */  public boolean add(E e) {
    throw new UnsupportedOperationException();
    } 

List

有序的 collection(也称为序列)。定义了一些针对List的方法

    boolean addAll(int var1, Collection<? extends E> var2);

    E get(int var1);

    E set(int var1, E var2);

    void add(int var1, E var2);

    E remove(int var1);

    int indexOf(Object var1);

    int lastIndexOf(Object var1);

    ListIterator<E> listIterator();

    ListIterator<E> listIterator(int var1);

    List<E> subList(int var1, int var2)
AbstractList此类提供 List 接口的骨干实现,以最大限度地减少实现“随机访问”数据存储(如数组)支持的该接口所需的工作。和AbstractCollection实现了Collection的骨干实现一样
 //list结构被修改的次数
protected transient int modCount = 0;
AbstractSequentialList 是 LinkedList的父接口此类提供的骨干实现List界面最小化以实现此接口由“连续访问”数据存储备份所需的工作(如链接列表)。对于随机访问数据(如数组), AbstractList应优先于此类。实现的add 方法
public void add(int index, E element) {
        try {      //  使用 ListIterator 的 add方法
      listIterator(index).add(element);     } catch (NoSuchElementException exc)   { 

  throw new IndexOutOfBoundsException("Index: "+index); } }
				
时间: 2024-10-10 19:56:42

java 集合框架 List相关接口的相关文章

Java集合框架之List接口

在上一篇Java集合框架之Collection接口中我们知道List接口是Collection接口的子接口,List接口对Collection进行了简单的扩充,List接口中的元素的特点为有序,可重复,允许null值,因为List继承了Collection接口,所以继承自Collection接口中的方法不再赘述,从List接口中的方法来看,List接口主要是增加了面向位置的操作,允许在指定位置上对集合中的元素进行操作,同时增加了一个能够双向遍历线性表的新列表迭代器ListIterator.下面介

Java集合框架中List接口的简单使用

Java集合框架可以简单的理解为一种放置对象的容器,和数学中的集合概念类似,Java中的集合可以存放一系列对象的引用,也可以看做是数组的提升,Java集合类是一种工具类,只有相同类型的对象引用才可以放到同一个集合中,否则是不能放进去的: 集合可以对元素进行简单快速的查找.插入.删除操作 某些集合可以有<key value>映射的关系 数组的长度是固定的,而集合的长度是跟随元素的个数动态变化的,灵活性和扩展性都比数组更加优越 数组只能存放基本类型的数据,而集合存放的是对象引用类型的 数组只能通过

Java集合框架中Map接口的使用

在我们常用的Java集合框架接口中,除了前面说过的Collection接口以及他的根接口List接口和Set接口的使用,Map接口也是一个经常使用的接口,和Collection接口不同,Map接口并不是线性的存放对象的引用,Map接口提供了一种映射关系,所有的元素都是以键值对(Entry类型对象实例)的方式存储的,所以能够根据key快速查找value,key是映射关系的索引,value是key所指向的对象,注意,这里的value不是一个数值,而是一个对象的引用,Java集合框架的元素均是指对象!

JavaSE入门学习36:Java集合框架之Set接口及其实现类HashSet和TreeSet

一Set接口 Set接口可以与数学中的集合的概念相对应.Set接口是Collection接口的子接口,Set接口里多个对象之间没有明 显的顺序.具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection接口中定义的方法相 同.只是行为不同(Set不允许包含重复元素). Set集合不允许重复元素,是因为Set判断两个对象相同不是使用==运算符,而是根据equals()方法.即两个对象 用equals()方法比较返回true,Set就不能接受两个相等的对象. 我们

JavaSE入门学习35:Java集合框架之List接口及其实现类ArrayList和LinkedList

一List接口概述 List接口是Collection接口的子接口,实现List接口的集合类中的元素是有顺序的,而且可以重复,被称为序列. List集合中的元素都对应一个整数型的序列容器中的序号记载其在容器中的位置,可以根据序号存取容器中的元 素.List接口可以精确的控制每个元素的插入位置,或者删除某个位置元素. Java所提供的List集合实现类类有ArrayList实现类.LinkedList实现类.Vector等,我们主要使用的是ArrayList实 现类和LinkedList实现类.

I学霸官方免费教程三十五:Java集合框架之Collection接口和Collections类

Collection接口 Collection接口是List和Set接口的父接口,其中主要定义了一些集合基本操作的方法,包括与Iterator之间的关系List  extends  CollectionArrayList  implements  ListLinkedList  implements  ListVector  implements  ListSet  extends  CollectionHashSet  implements  SetSortedSet  extends  Se

JavaSE入门学习37:Java集合框架之Map接口及其实现类HashMap和TreeMap

一Map接口 Map接口中的每个成员方法由一个关键字(key)和一个值(value)构成.Map接口不直接继承于Collection接口,因 为它包装的是一组成对的"键-值"对象的集合,而且在Map接口的集合中也不能有重复的key出现,因为每个键只能与 一个成员元素相对应. Map接口定义了存储"键(key)--值(value)映射对"的方法.实现Map接口的类用来存储键值对.Map接口中包含 了一个keySet()方法,用于返回Map中所有key组成的Set集合.

[转载]Java集合框架的常见面试题

http://www.jfox.info/40-ge-java-ji-he-lei-mian-shi-ti-he-da-an 整理自上面链接: Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点.这里,我列出了一些关于Java集合的重要问题和答案. 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector.Stack.HashTable和Array.随着集合的广泛使用, Java1.2提出了囊括所有集

(二)java集合框架综述

一集合框架图 说明:对于以上的框架图有如下几点说明 1.所有集合类都位于java.util包下.Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些子接口或实现类.2. 集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础.3. 抽象类:5个抽象类(长虚线表示),对集合接口的部分实现.可扩展为自定义集合类.4. 实现类:8个实现类(实线表示),对接口的具体实现.5. Collectio