欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

java語言

java.util.ArrayDeque類使用方法介紹

時間:2025-05-28 14:24:49 java語言 我要投稿
  • 相關(guān)推薦

java.util.ArrayDeque類使用方法介紹

  本文為大家介紹了java.util.ArrayDeque類使用方法,供大家參考,具體內(nèi)容如下

  1. ArrayDeque有兩個類屬性,head和tail,兩個指針。

  2. ArrayDeque通過一個數(shù)組作為載體,其中的數(shù)組元素在add等方法執(zhí)行時不移動,發(fā)生變化的只是head和tail指針,而且指針是循環(huán)變化,數(shù)組容量不限制。

  3. offer方法和add方法都是通過其中的addLast方法實現(xiàn),每添加一個元素,就把元素加到數(shù)組的尾部,此時,head指針沒有變化,而tail指針加一,因為指針是循環(huán)加的,所以當(dāng)tail追上head((this.tail = this.tail + 1 & this.elements.length - 1) == this.head)時,數(shù)組容量翻一倍,繼續(xù)執(zhí)行。

  4. remove方法和poll方法都是通過其中的pollFirst方法實現(xiàn),每移除一個元素,該元素所在位置變成null,此時,tail指針沒有變化,而head指針加一,當(dāng)數(shù)組中沒有數(shù)據(jù)時,返回null。

  5. 因為ArrayDeque不是線程安全的,所以,用作堆棧時快于 Stack,在用作隊列時快于 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 + " "); } // 刪除第一個 data.removeFirst(); // 獲取第一個 System.out.println(data.peekFirst()); // 增加到最后 data.addLast("www.what21.com .9999"); // System.out.println(data); // 遍歷 for(Object o : data){ System.out.println(o); } } }

  以上就是本文的全部內(nèi)容,希望對大家的學(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

有關(guān)phpmailer的詳細(xì)介紹及使用方法04-12