LinkedList集合
java.util.LinkedList
集合數據存儲的結構是鏈表結構。方便元素添加、刪除的集合。
LinkedList是一個雙向鏈表,那麼雙向鏈表是什麼樣子的呢,我們用個圖瞭解下
實際開發中對一個集合元素的添加與刪除經常涉及到首尾操作,而LinkedList提供了大量首尾操作的方法。這些方法我們作爲了解即可:
public void addFirst(E e)
:將指定元素插入此列表的開頭。public void addLast(E e)
:將指定元素添加到此列表的結尾。public E getFirst()
:返回此列表的第一個元素。public E getLast()
:返回此列表的最後一個元素。public E removeFirst()
:移除並返回此列表的第一個元素。public E removeLast()
:移除並返回此列表的最後一個元素。public E pop()
:從此列表所表示的堆棧處彈出一個元素。public void push(E e)
:將元素推入此列表所表示的堆棧。public boolean isEmpty()
:如果列表不包含元素,則返回true。
LinkedList是List的子類,List中的方法LinkedList都是可以使用,這裏就不做詳細介紹,我們只需要瞭解LinkedList的特有方法即可。在開發時,LinkedList集合也可以作爲堆棧,隊列的結構使用。(瞭解即可)
方法演示:
package likedlist;
import 集合.LinkedList.Linkedlist;
import java.util.Iterator;
import java.util.LinkedList;
/**
* @author fengxun
* @version 1.0
* @date 2020/6/9 20:43
*
*addFirst(E e) 在該列表開頭插入指定的元素。
*push(E e)將元素推送到由此列表表示的堆棧上。 換句話說,在該列表的前面插入元素。
*addLast(E e) 將指定的元素追加到此列表的末尾。
*
* getFirst() 返回此列表中的第一個元素。
* getLast() 返回此列表中的最後一個元素。
*
* removeFirst() 從此列表中刪除並返回第一個元素。
* removeLast() 從此列表中刪除並返回最後一個元素
*
* pop() 從此列表表示的堆棧中彈出一個元素。換句話就是 刪除並返回此列表的第一個元素。
*
*/
public class linkedlist {
public static void main(String[] args) {
//定義linkedlist集合
LinkedList<String> linkedList = new LinkedList<>();
//向集合中添加元素
linkedList.add("a");
linkedList.add("b");
linkedList.add("c");
//addFirst(E e) 在該列表開頭插入指定的元素。
linkedList.addFirst("abc");
System.out.println(linkedList);//[abc, a, b, c]
//addLast(E e) 將指定的元素追加到此列表的末尾。
linkedList.addLast("cba");
System.out.println(linkedList);//[abc, a, b, c, cba]
//push(E e)將元素推送到由此列表表示的堆棧上。 換句話說,在該列表的前面插入元素。
linkedList.push("qwe");
System.out.println(linkedList);//[qwe, abc, a, b, c, cba]
//getFirst() 返回此列表中的第一個元素。
String first = linkedList.getFirst();
System.out.println("返回此列表中的第一個元素:"+first);//返回此列表中的第一個元素:qwe
//getLast() 返回此列表中的最後一個元素。
String last = linkedList.getLast();
System.out.println("返回此列表中的最後一個元素:"+last);//返回此列表中的最後一個元素:cba
// removeFirst() 從此列表中刪除並返回第一個元素。
String removeFirst = linkedList.removeFirst();
System.out.println("刪除並返回第一個元素:"+removeFirst);//刪除並返回第一個元素:qwe
// removeLast() 從此列表中刪除並返回最後一個元素
String removeLast = linkedList.removeLast();
System.out.println("刪除並返回最後一個元素"+removeLast);//刪除並返回最後一個元素cba
//pop() 從此列表表示的堆棧中彈出一個元素。換句話就是 刪除並返回此列表的第一個元素。
String pop = linkedList.pop();
System.out.println("刪除並返回此列表的第一個元素"+pop);//刪除並返回此列表的第一個元素abc
//判斷集合是否爲空
while (!linkedList.isEmpty()) {
System.out.println(linkedList.pop()); //彈出集合中的棧頂元素
}
//循環集合
for (String s : linkedList) {
System.out.println(s);//a b c
}
System.out.println("---------------------------------------");
//使用迭代器
Iterator<String> iterator = linkedList.iterator();
while (iterator.hasNext()){
String next = iterator.next();
System.out.println(next);//a b c
}
}
}