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

首頁 > 學院 > 開發設計 > 正文

Java中的Stack

2019-11-18 13:22:07
字體:
來源:轉載
供稿:網友

  Stack有時也可以稱為“后入先出”(LIFO)集合。換言之,我們在堆棧里最后“壓入”的東西將是以后第一個“彈出”的。和其他所有java集合一樣,我們壓入和彈出的都是“對象”,所以必須對自己彈出的東西進行“造型”。
  一種很少見的做法是拒絕使用Vector作為一個Stack的基本構成元素,而是從Vector里“繼續”一個Stack。這樣一來,它就擁有了一個Vector的所有特征及行為,另外加上一些額外的Stack行為。很難判定出設計者到底是明確想這樣做,還是屬于一種固有的設計。
  下面是一個簡單的堆棧示例,它能讀入數組的每一行,同時將其作為字串壓入堆棧。
  
  //: Stacks.java
  // Demonstration of Stack Class
  import java.util.*;
  
  public class Stacks {
   static String[] months = {
    "January", "February", "March", "A    "May", "June", "July", "August", "September",
    "October", "November", "December" };
   public static void main(String[] args) {
    Stack stk = new Stack();
    for(int i = 0; i < months.length; i++)
     stk.push(months[i] + " ");
    System.out.println("stk = " + stk);
    // Treating a stack as a Vector:
    stk.addElement("The last line");
    System.out.println(
     "element 5 = " + stk.elementAt(5));
    System.out.println("popping elements:");
    while(!stk.empty())
     System.out.println(stk.pop());
   }
  } ///:~
  
  months數組的每一行都通過push()繼續進入堆棧,稍后用pop()從堆棧的頂部將其取出。要聲明的一點是,Vector操作亦可針對Stack對象進行。這可能是由繼續的特質決定的——Stack“屬于”一種Vector。因此,能對Vector進行的操作亦可針對Stack進行,例如elementAt()方法。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新宾| 安宁市| 桂平市| 聂拉木县| 香港 | 炎陵县| 贡觉县| 邓州市| 宁明县| 德钦县| 贵南县| 寿阳县| 丽江市| 元阳县| 小金县| 广汉市| 七台河市| SHOW| 九江县| 皋兰县| 肃南| 巴彦县| 广东省| 县级市| 武山县| 宝清县| 乳山市| 南康市| 嘉兴市| 琼结县| 台东县| 库尔勒市| 崇文区| 巫山县| 临江市| 凤翔县| 蓬安县| 六枝特区| 华亭县| 巩留县| 金华市|