我有一个程序,它添加一个包含(int studentNumber, String firstName, String lastName, String major, double gpa)
的节点并将其“保存”到文件中,我有以下方法:
public void saveRecord (Node focusNode) {
JOptionPane.showMessageDialog(null,"saving file...");
try
{
ObjectOutputStream output = new ObjectOutputStream(new FileOutputStream(file));
if (focusNode != null){
System.out.println(focusNode);
output.writeObject((focusNode));
preOrderTraverseTree(focusNode.leftChild);
preOrderTraverseTree(focusNode.rightChild);
}//end if
output.close();
}
//catch exceptions
}//end save
现在,我想撤回编写的每个节点,并能够对它们进行不同的排序(例如,按major,gpa等)。如何在保留所有字段的同时执行此操作,以便在我重新阅读它们时可以搜索它们?我曾考虑过将它们读回到一个列表中,但是它添加的每一行都没有前面提到的参数。我的
addNode
方法使用这些参数将每个节点添加到树中,因此我不能只是调用它。我该怎么做? 最佳答案
我已经在对其他问题here的回答中包含了该问题的答案。