Java实现LinkedList API的完整指南

源内容(英文)

链表是集合框架的一部分,位于java.util包中。这个类实现了链表数据结构,它是一种线性数据结构,其中元素不存储在连续的位置,每个元素都是一个单独的对象,包含数据部分和地址部分。

什么是链表API?

  • 链表API旨在实现作为集合框架一部分的链表集合,它继承自java.util包。
  • 这个API是List和Deque接口的双向链表实现。
  • 该API实现了所有可选的列表操作,并允许所有元素(包括null)。
  • 所有操作都按照双向链表的预期执行。索引到列表中的操作将从开头或结尾遍历列表,以接近指定索引的位置为准。
  • 下面是用于实现链表集合API的Java程序的源代码。

示例:

Java

“`java

// Java程序实现LinkedList API

// 从java.util包导入实用类

import java.util.*;

import java.util.Collection;

// 类

// 包含所有方法的主类

public class LinkedListImpl {

// 此类的成员变量

private LinkedList linkedList;

// 此类的构造函数

// 1. 默认构造函数

public LinkedListImpl()

{

linkedList = new LinkedList();

}

// 2. 参数化构造函数

public LinkedListImpl(Collection c)

{

linkedList = new LinkedList(c);

}

// 方法1

// 将指定元素追加到此列表的末尾

public boolean add(E e)

{

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

return linkedList.add(e);

}

// 方法2

// 在此列表的指定位置插入指定元素

public void add(int index, E element)

{

linkedList.add(index, element);

}

// 方法3

// 将所有元素添加到此列表中

public boolean addAll(Collection c)

{

return linkedList.addAll(c);

}

// 方法4

// 将所有元素添加到此列表中

public boolean addAll(int index,

Collection c)

{

return linkedList.addAll(index, c);

}

// 方法5

// 在此列表的开头插入指定元素

public void addFirst(E e) { linkedList.addFirst(e); }

// 方法6

// 将指定元素追加到此列表的末尾

public void addLast(E e) { linkedList.addLast(e); }

// 方法7

// 从此列表中移除所有元素。

public void clear() { linkedList.clear(); }

// 方法8

// 返回此ArrayList实例的浅表副本。

public Object clone() { return linkedList.clone(); }

// 方法9

// 如果此列表包含指定元素,则返回true。

public boolean contains(Object o)

{

return linkedList.contains(o);

}

// 方法10

// 返回此双端队列中元素的迭代器(反向顺序)

public Iterator descendingIterator()

{

return linkedList.descendingIterator();

}

// 方法11

// 检索但不移除此列表的头(第一个元素)。

public E element() { return linkedList.element(); }

// 方法12

// 返回此列表中指定位置的元素。

public E get(int index)

{

return linkedList.get(index);

}

// 方法13

// 返回此列表中的第一个元素。

public E getFirst() { return linkedList.getFirst(); }

// 方法14

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

public E getLast() { return linkedList.getLast(); }

// 方法15

// 返回指定元素首次出现的索引

public int indexOf(Object o)

{

return linkedList.indexOf(o);

}

// 方法16

// 如果此列表不包含元素,则返回true。

public boolean isEmpty()

{

return linkedList.isEmpty();

}

// 方法17

// 按适当顺序返回此列表中元素的迭代器。

public Iterator iterator()

{

return linkedList.iterator();

}

// 方法18

public int lastIndexOf(Object o)

{

return linkedList.lastIndexOf(o);

}

// 方法19

public ListIterator listIterator()

{

return linkedList.listIterator();

}

// 方法20

public ListIterator listIterator(int index)

{

return linkedList.listIterator(index);

}

// 方法21

// 将指定元素添加为此列表的尾部(最后一个元素)

public boolean offer(E e)

{

return linkedList.offer(e);

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/21882.html
点赞
0.00 平均评分 (0% 分数) - 0