Bir nesneyi bir listeye aktarmaya çalışıyorum. Nesne, "hareketler" adlı bir String özniteliğine sahiptir. Nesneyi ArrayList'e aktardıktan sonra, nesneye, "hamlelerin" değerini, listeye geçirilen nesneyi değiştirmeden orijinal durumuna sıfırlamak için değiştirmek istiyorum. Bunu nasıl yaparım?Nesneyi bir listeye kaydetme ve listedeki girişi değiştirmeden nesne için bir dize değiştirme?
Gerçekten mücadele ediyorum lütfen yardım edin.
Benim kodudur teşekkür ederiz:
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
}
Orijinal nesnenin bir kopyasını oluşturmadan yapamazsınız. – shmosel
2 durumu saklamak için 2 nesneye ihtiyacınız var – Stewart
@AliShobeiri, kısayol yok. Sadece yeni bir nesne oluşturun ve tüm alanları orijinalden kopyalayın. – shmosel