程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 編寫一個JAVA的隊列類

編寫一個JAVA的隊列類

編輯:JAVA編程入門知識

  根據這些特點,對隊列定義了以下六種操作:

  enq(x) 向隊列插入一個值為x的元素;

  deq() 從隊列刪除一個元素;

  front() 從隊列中讀一個元素,但隊列保持不變;

  empty() 判斷隊列是否為空,空則返回真;

  clear() 清空隊列;

  search(x) 查找距隊首最近的元素的位置,若不存在,返回-1。

  Vector類是JAVA中專門負責處理對象元素有序存儲和任意增刪的類,因此,用Vector

  可以快速實現JAVA的隊列類。 

  public class Queue extends java

  public synchronized void enq(Object x) {

  super.addElement(x);

  }

  public synchronized Object deq() {

  /* 隊列若為空,引發EmptyQueueException異常 */

  if( this.empty() )

  throw new EmptyQueueException();

  Object x = super.elementAt(0);

  super.removeElementAt(0);

  return x;

  }

  public synchronized Object front() {

  if( this.empty() )

  throw new EmptyQueueException();

  return super.elementAt(0);

  }

  public boolean empty() {

  return super.isEmpty();

  }

  public synchronized void clear() {

  super.removeAllElements();

  }

  public int search(Object x) {

  return super.indexOf(x);

  }

  }

  public class EmptyQueueException extends java

  } 

  以上程序在JDK1.1.5下編譯通過

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved