在我的程序中,用户输入单词及其相应的定义。 该用户定义对象的一个示例是[面容,人脸]。 用户的单词存储在一个与文件 I/O 一起使用的数组列表中。 但是,每次我调用“prepareTable”方法时,程序 将文本文件中找到的单词的重复项添加到数组列表中。如果您需要查看更多代码,我可以发布它,但为了方便/可读性,我只发布了prepareTable方法。为什么我的程序会重复这些单词?这个方法有问题吗?
public void prepareTable ()
{
readFromFile();
for (int i = 0; i <= LibraryWordsList.size() - 1; i++)
{
tableData.setValueAt(LibraryWordsList.get(i).getWord(), i, 0);
tableData.setValueAt(LibraryWordsList.get(i).getDefinition(), i, 1);
}
}
最佳答案
如果tableData
引用DefaultTableModel
的实例,您可以在添加新条目之前调用setRowCount(0)
来清除以前的条目。您可以使用表的 getModel()
方法获取对表的 TableModel
的引用。
关于java - 带有文件 I/O 和数组列表的 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15443304/