我目前正在开发一个项目,其中当模型部分中的某些内容发生更改时,propertyChangeListener 用于更新程序的视图部分。该程序解决给定的数独难题并更新模型以包含解决方案。
我使用具有参数 oldValue 和 newValue 的 firePropertyChange 方法。我知道这些必须有所不同才能发生某些事情,但它们到底是什么真的重要吗?在我的程序中,模型总是在发生某些事情时更新,我从不使用包含在 oldValue 或 newValue 中的信息。
是否可以将它们作为“1”和“2”来确保它们总是不同的?这会导致任何其他问题。这是一个名为 clear 的方法,它将数独重置为空白板:
public void clear() {
String oldBoard = getBoard();
for (int i=0; i<9; i++) {
for (int k=0; k<9; k++)
plan[i][k] = 0;
}
pcs.firePropertyChange("clear", oldBoard, getBoard());
}