国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java.util.ArrayDeque類使用方法詳解

2019-11-26 14:28:11
字體:
來源:轉載
供稿:網友

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

1. ArrayDeque有兩個類屬性,head和tail,兩個指針。
2. ArrayDeque通過一個數組作為載體,其中的數組元素在add等方法執行時不移動,發生變化的只是head和tail指針,而且指針是循環變化,數組容量不限制。
3. offer方法和add方法都是通過其中的addLast方法實現,每添加一個元素,就把元素加到數組的尾部,此時,head指針沒有變化,而tail指針加一,因為指針是循環加的,所以當tail追上head((this.tail = this.tail + 1 & this.elements.length - 1) == this.head)時,數組容量翻一倍,繼續執行。
4. remove方法和poll方法都是通過其中的pollFirst方法實現,每移除一個元素,該元素所在位置變成null,此時,tail指針沒有變化,而head指針加一,當數組中沒有數據時,返回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<Object> data = new ArrayDeque<Object>();    // 增加元素    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);    }  }   } 

以上就是本文的全部內容,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲松县| 南城县| 合肥市| 乌拉特后旗| 香格里拉县| 阜新市| 河北区| 黄梅县| 西峡县| 孝义市| 伊宁市| 佛冈县| 兴业县| 轮台县| 丰镇市| 上栗县| 灵宝市| 潞西市| 贵定县| 天全县| 无棣县| 呼和浩特市| 沭阳县| 博乐市| 厦门市| 台中市| 石首市| 白玉县| 十堰市| 湖州市| 游戏| 崇仁县| 黄石市| 利辛县| 绍兴县| 泾川县| 潍坊市| 柳州市| 舒兰市| 来宾市| 资源县|