Salin Operasi dalam Java ArrayList: Memahami Kelakuan Rujukan
Menetapkan rujukan kepada objek Java, seperti ArrayList, hanya menyalin rujukan nilai, bukan objek itu sendiri. Dalam kes ArrayLists, memberikan l1 kepada l2 bermakna kedua-dua rujukan menghala ke objek ArrayList yang sama. Sebarang perubahan seterusnya yang dibuat melalui l2 juga akan ditunjukkan dalam l1.
Walau bagaimanapun, terdapat senario di mana anda mungkin memerlukan salinan objek ArrayList, bukan hanya rujukan. Untuk mencapai matlamat ini, anda boleh mencipta objek ArrayList baharu dan mengisinya dengan menyalin elemen daripada ArrayList asal menggunakan kaedah pengumpulan seperti addAll(). Proses ini mencipta objek ArrayList baharu dengan struktur data asasnya sendiri, menjadikan salinan bebas daripada yang asal.
Contoh Kod:
List<Integer> l1 = new ArrayList<>(); for (int i = 1; i <= 10; i++) { l1.add(i); } // Create a new ArrayList object to copy the elements into List<Integer> l2 = new ArrayList<>(); l2.addAll(l1); // Clear the original list using l2 l2.clear(); // Original list l1 remains unaffected System.out.println(l1); // Prints [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Salinan Benar Java ArrayList: Rujukan vs. Objek Bebas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!