我正在學習一門編程課,我有以下任務。鏈接列表的remove()方法
編寫一個菜單驅動的程序,可以接受單詞及其含義,也可以按詞典順序(即在字典中)顯示單詞列表。當要將詞條添加到字典中時,必須先將該詞作爲一個字符串輸入,然後將其含義作爲單獨的字符串輸入。另一個要求 - 不時地語言變得過時。發生這種情況時,必須從字典中刪除此類字詞。
使用JOptionPane類輸入信息。
使用鏈表的概念來執行此練習。您至少需要以下課程:
- WordMeaning類,它包含單詞的名稱及其含義。
- 一個WordMeaningNode類,用於創建信息節點及其 鏈接字段。
- 一個WordList類,用於創建和維護單詞的鏈接列表和 其含義。
- 一個測試你的類的Dictionary類。
對於輸出,程序應該產生兩個滾動列表:
- 詞和它們的含義的當前列表。
- 刪除單詞的列表。你不需要列出意義,只需要 這個詞。
到目前爲止,除了remove方法之外,我已經編碼了一切,我不確定如何編碼,所以任何人都可以幫助我。我已經編寫了add方法,但是現在我不知道我的WordList類中的remove方法從哪裏開始。我的課程如下。
單詞表類:
public class WordList {
WordMeaningNode list;
WordList() {
list = null;
}
void add(WordMeaning w)// In alphabetical order
{
WordMeaningNode temp = new WordMeaningNode(w);
if (list == null)
list = temp;
else
{
WordMeaningNode aux = list;
WordMeaningNode back = null;
boolean found = false;
while(aux != null && !found)
if(temp.getWordMeaning().getName().compareTo(aux.getWordMeaning().getName()) < 0)
found = true;
else
{
back = aux;
aux = aux.next;
}
temp.next = aux;
if (back == null)
list = temp;
else
back.next = temp;
}
}
boolean listIsEmpty() {
boolean empty;
if (list == null) {
empty = true;
} else {
empty = false;
}
return empty;
}
public String toString()
{
String result = "";
int count = 0;
WordMeaningNode current = list;
while (current != null)
{
count++;
result += current.getWordMeaning().getName() + "\n" + "\t" + current.getWordMeaning().getDefinition();
current = current.next;
}
return result + "\nThe number of words is : " + count;
}
}
我想,像我一樣的add方法使用相同的方法格式remove方法,但並沒有真正的工作,或者我沒有錯。
不,他的任務是*代碼* WordMeaningNodes的鏈表,每個節點包含一個帶有單詞及其定義的WordMeaning實例。在發表評論前閱讀問題。 –