編寫(xiě)一個(gè)JAVA的隊(duì)列類(lèi)
如何編寫(xiě)一個(gè)JAVA的隊(duì)列類(lèi)?下面是由百分網(wǎng)小編為大家整理的編寫(xiě)一個(gè)JAVA的隊(duì)列類(lèi),喜歡的可以收藏一下!了解更多詳情資訊,請(qǐng)關(guān)注應(yīng)屆畢業(yè)生考試網(wǎng)!
根據(jù)這些特點(diǎn),對(duì)隊(duì)列定義了以下六種操作:
enq(x) 向隊(duì)列插入一個(gè)值為x的元素;
deq() 從隊(duì)列刪除一個(gè)元素;
front() 從隊(duì)列中讀一個(gè)元素,但隊(duì)列保持不變;
empty() 判斷隊(duì)列是否為空,空則返回真;
clear() 清空隊(duì)列;
search(x) 查找距隊(duì)首最近的元素的位置,若不存在,返回-1。
Vector類(lèi)是JAVA中專(zhuān)門(mén)負(fù)責(zé)處理對(duì)象元素有序存儲(chǔ)和任意增刪的類(lèi),因此,用Vector
可以快速實(shí)現(xiàn)JAVA的隊(duì)列類(lèi)。
public class Queue extends java
public synchronized void enq(ob ject x) {
super.addElement(x);
}
public synchronized ob ject deq() {
/* 隊(duì)列若為空,引發(fā)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下編譯通過(guò)
【編寫(xiě)一個(gè)JAVA的隊(duì)列類(lèi)】相關(guān)文章:
用Java編寫(xiě)一個(gè)隊(duì)列類(lèi)02-21
如何編寫(xiě)一個(gè)JAVA的隊(duì)列類(lèi)03-07
Java隊(duì)列類(lèi)編寫(xiě)實(shí)例12-05
用JAVA編寫(xiě)一個(gè)隊(duì)列類(lèi)實(shí)例09-29
java程序編寫(xiě)12-30
如何編寫(xiě)java程序09-23
java編寫(xiě)oracle存儲(chǔ)的方法02-10
Java的類(lèi)02-22