- 相關推薦
用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(ob ject x) {
super.addElement(x);
}
public synchronized ob ject deq() {
/* 隊列若為空,引發EmptyQueueException異常 */
if( this.empty() )
throw new EmptyQueueException();
ob ject x = super.elementAt(0);
super.removeElementAt(0);
return x;
}
public synchronized ob ject 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(ob ject x) {
return super.indexOf(x);
}
}
public class EmptyQueueException extends java
}
以上程序在JDK1.1.5下編譯通過
【用JAVA編寫一個隊列類實例】相關文章:
Java隊列類編寫實例11-30
java調用c函數的實例04-03
Java簡單程序編寫03-29
Java中的多態用法實例分析04-04
java讀取解析xml文件實例12-01
Java 異步回調機制實例解析03-18
php中使用redis隊列操作實例代碼03-02
java中通用的線程池實例代碼08-27
php編寫的一個E-mail驗證類11-16