JDK中针对每一种集合类都提供了一种双向链表实现,HashMap对应LinkedHashMap、HashSet对应LinkedHashSet,ArrayList则对应LinkedList。
双向链表的特点就是可以快速的插入和删除,LinkedList充分展示了这种特性,为我们提供了如下方法:
addFirst(E o)
将给定元素插入此列表的开头。
addLast(E o)
将给定元素追加到此列表的结尾。
set(int index, E element)
将此列表中指定位置的元素替换为指定的元素。
remove(Object o)
移除此列表中首次出现的指定元素。
getFirst()
返回此列表的第一个元素。
getLast()
返回此列表的最后一个元素。
以下是一个LinkedList的使用示例:
package com.darkmi.basic;
import java.util.LinkedList;
public class LinkedListTest {
public static void main(String[] args) {
LinkedList
//初始化数据
linkedList.add(1);
linkedList.add(2);
linkedList.add(3);
linkedList.add(4);
linkedList.add(5);
System.out.println(linkedList);
//首位添加一个元素
linkedList.addFirst(0);
//末尾添加一个元素
linkedList.addLast(6);
System.out.println(linkedList);
//替换到索引2处的元素
linkedList.set(2, 9);
System.out.println(linkedList);
//移除末尾元素
linkedList.remove(linkedList.size()-1);
System.out.println(linkedList);
}
}
输出:
[1, 2, 3, 4, 5]
[0, 1, 2, 3, 4, 5, 6]
[0, 1, 9, 3, 4, 5, 6]
[0, 1, 9, 3, 4, 5]
Sorry, the comment form is closed at this time.
No comments yet.