java-从列表中删除对象时出现问题
我在从列表中删除对象时遇到问题: 问题是,在选择选项3时: “删除特定联系人” 它显示我要删除的对象, 但是删除不会发生在文件中的对象上 更新1:我知道我需要将列表重新分配到文件中, 有什么建议吗? 更新2:我想覆盖文件,我怎么能调用所有列表, 而不是只有一个对象-ListName.get(列表中的对象数) 更新3:因为我没有找到任何方法来获取所有的列表,所以我就这样做了java-从列表中删除对象时出现问题,java,list,Java,List,我在从列表中删除对象时遇到问题: 问题是,在选择选项3时: “删除特定联系人” 它显示我要删除的对象, 但是删除不会发生在文件中的对象上 更新1:我知道我需要将列表重新分配到文件中, 有什么建议吗? 更新2:我想覆盖文件,我怎么能调用所有列表, 而不是只有一个对象-ListName.get(列表中的对象数) 更新3:因为我没有找到任何方法来获取所有的列表,所以我就这样做了 for (int i = 0; i <contacts.size() ; i++) { if
for (int i = 0; i <contacts.size() ; i++) {
if (i==0) {
IO.write(fileName, contacts.get(i));
}if (i>=1){
IO.append(fileName,"\n"+ contacts.get(i));
}
}
这里有几件重要的事情你需要了解。永久存储数据的文件内容(例如硬盘)。临时驻留在RAM中的列表对象。这两个是完全不同的,不相连的。当您的程序处理列表对象时,它只影响该临时列表。为了用列表数据的更改来更新文件,程序必须显式地处理文件的更新。将内容视为数据的文件操作本身就是一个复杂的领域。您的代码段引用了其他库,如
List contacts=IO.read(fileName)代码>。您应该查阅该库以了解将数据重新写入文件的可能选择。您的deletePhoneBookContact
没有将您的更改写入文件,那么为什么您希望文件的内容发生更改?您从文件中读取一个列表,然后从列表中删除该项目。这与文件无关,因此文件当然不会更改。非常感谢,我如何将其与文件关联?