Tôi đang cố gắng sao chép nội dung của một danh sách mảng vào một đối tượng khác. Tôi cố gắng khởi tạo đối tượng ArrayList mới theo các cách sauJava - sao chép các đối tượng mảng danh sách
newArrList.addAll(oldArrList);
và
newArrList = new ArrayList(oldArrList);
Nhưng mỗi khi tôi thực hiện thay đổi một trong những danh sách mảng, giá trị cũng thay đổi trong ArrayList khác.
Ai đó có thể vui lòng cho tôi biết cách tôi có thể tránh điều này.
Cảm ơn.
Xin chào, bằng 'bản sao sâu ', bạn có nghĩa là các đối tượng/nội dung phải được sao chép từng cái một không? –
@ user1282407: Có. Thay vì giữ các tham chiếu đến các đối tượng hiện có, bạn tạo các đối tượng mới có cùng nội dung (ngoại trừ các đối tượng không thay đổi, ở đó nó không quan trọng). –
OK. Cảm ơn! Tôi đoán không có cách nào dễ dàng hơn để sao chép nội dung. . –