我有一段涉及 LinkedList 的代码。以下是
topic.read()
topic.delete() and
topic.send()
是来自名为 Topic 的 LinkedList 的方法。这些都在 GUI 设计中实现。方法
topic.read(name)
topic.send(text)
工作正常,但是
topic.delete(index)
扔给我一个
IndexOutOfBoundsException
我简要解释了这些方法:read(name) 和 send(text) 接受 String 参数并读取主题及其消息列表,并以接收方式向主题发送消息。delete(index) 应该从主题中删除索引指定的消息。但是,错误消息告诉我 Size 为 0。
相关文章:(我认为应该足够了,如果需要会添加更多部分)
public void act(String s)
{
topic = new Topic(s, topics);
if (s.equals("Read"))
setEditorText(topic.read(readText()));
else if (s.equals("Delete"))
topic.delete(indexText());
else if (s.equals("Send"))
{
topic.send(getEditorText(), sendText());
clear();
}
}
将这些添加到此问题中:
private JTextField indexText = new JTextField(10);
public int indexText()
{
return Integer.parseInt(indexText.getText());
}
public class Topic {
private LinkedList<String> messages = new LinkedList<String>();
public void delete(int index)
{
messages.remove(index - 1);
}
}