- 相關(guān)推薦
java.util.ArrayDeque類使用方法介紹
本文為大家介紹了java.util.ArrayDeque類使用方法,供大家參考,具體內(nèi)容如下
1. ArrayDeque有兩個(gè)類屬性,head和tail,兩個(gè)指針。
2. ArrayDeque通過一個(gè)數(shù)組作為載體,其中的數(shù)組元素在add等方法執(zhí)行時(shí)不移動(dòng),發(fā)生變化的只是head和tail指針,而且指針是循環(huán)變化,數(shù)組容量不限制。
3. offer方法和add方法都是通過其中的addLast方法實(shí)現(xiàn),每添加一個(gè)元素,就把元素加到數(shù)組的尾部,此時(shí),head指針沒有變化,而tail指針加一,因?yàn)橹羔樖茄h(huán)加的,所以當(dāng)tail追上head((this.tail = this.tail + 1 & this.elements.length - 1) == this.head)時(shí),數(shù)組容量翻一倍,繼續(xù)執(zhí)行。
4. remove方法和poll方法都是通過其中的pollFirst方法實(shí)現(xiàn),每移除一個(gè)元素,該元素所在位置變成null,此時(shí),tail指針沒有變化,而head指針加一,當(dāng)數(shù)組中沒有數(shù)據(jù)時(shí),返回null。
5. 因?yàn)锳rrayDeque不是線程安全的,所以,用作堆棧時(shí)快于 Stack,在用作隊(duì)列時(shí)快于 LinkedList。
package com.what21.collect11; import java.util.ArrayDeque;import java.util.Deque; public class ArrayDequeDemo { /** * @param args */ public static void main(String[] args) { Deque
data = new ArrayDeque
(); // 增加元素 for (int i = 0; i < 20; i++) { data.push("www.what21.com ." + i + " "); } // 刪除第一個(gè) data.removeFirst(); // 獲取第一個(gè) System.out.println(data.peekFirst()); // 增加到最后 data.addLast("www.what21.com .9999"); // System.out.println(data); // 遍歷 for(Object o : data){ System.out.println(o); } } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
【java.util.ArrayDeque類使用方法介紹】相關(guān)文章:
java File類的基本使用方法03-08
Java中ArrayList類的使用方法04-12
java system類使用方法示例05-03
Java語言Math類的使用方法03-23
java中File類的使用方法07-21
java中File類的使用方法有哪些04-22
java中File類有哪些使用方法05-29
PHP中trait使用方法介紹03-04