这是我的中级 Java 课程的作业问题。我应该使用链接列表而不使用内置的添加方法来制作“字典”。我无法让它按字母顺序添加节点。我只是将每个节点附加或附加到列表中没有问题,但这不是问题所要求的。该程序应该能够按字母升序和降序(两个单独的 JOptionPane 菜单选项)显示单词列表(及其含义)。它的证明......困难。这是我的添加方法:
void add(WordMeaning wm)
{
WordMeaningNode word = new WordMeaningNode(wm);
WordMeaningNode current, prev;
try
{
if(wmn == null)
{
wmn = word;
}
else
{
current = wmn;
prev = null;
while(current.next != null)
{
prev = current;
current = current.next;
}
if(word.wm.getWord().compareToIgnoreCase(current.wm.getWord()) < 0)
{
word.next = current.next;
current.next = word;
}
else if(word.wm.getWord().compareToIgnoreCase(current.wm.getWord()) > 0)
{
prev = current;
current.next = word;
}
}
}
catch(NullPointerException e)
{
e.printStackTrace();
}
}
我确实知道 while 循环下的 if 语句有问题。我只是不知道是什么。我还不够好,还不知道出了什么问题(笑)。我想知道我是否应该先正常附加它们,然后按字母顺序对其进行排序。如果是这样,那我该怎么做?请温柔一点。;)