我正在尝试将一个对象传递到列表中。该对象有一个名为“moves”的字符串属性。将对象传递到 ArrayList 后,我想修改该对象以将“moves”的值重置为其原始状态,而不更改已传递到列表的对象。我该怎么做?
我真的很挣扎,请帮忙。
谢谢
我的代码是:
if(B[i] && B[j] && !B[k]){
B[i]=!B[i];
B[j]=!B[j];
B[k]=!B[k];
String previousMoves=board.moves;
board.moves=board.moves+(i+"W"+k+", ");
board.store(B);
list.add(board);
board.moves=previousMoves;//Resetting string back to original
i++;j++;k++;
B=Arrays.copyOf(H, 33);
//Checks for a BWW situation
//Makes switch to WBB
}
最佳答案
您必须复制该对象。因此,您可以实现类似 clone()
的方法或采用相同类型的对象作为参数的构造函数。
关于java - 将对象保存到列表中并修改对象的字符串而不修改列表中的条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36366990/