Maison > Java > javaDidacticiel > Comment créer une copie fidèle d'une ArrayList Java : référence ou objet indépendant ?

Comment créer une copie fidèle d'une ArrayList Java : référence ou objet indépendant ?

Mary-Kate Olsen
Libérer: 2024-11-16 05:31:03
original
754 Les gens l'ont consulté

How to Create a True Copy of a Java ArrayList: Reference vs. Independent Object?

Opérations de copie dans Java ArrayList : comprendre le comportement des références

L'attribution d'une référence à un objet Java, tel qu'une ArrayList, copie simplement la référence valeur, pas l'objet lui-même. Dans le cas d'ArrayLists, l'attribution de l1 à l2 signifie que les deux références pointent vers le même objet ArrayList. Toutes les modifications ultérieures apportées via l2 seront également reflétées dans l1.

Cependant, il existe des scénarios dans lesquels vous pourriez avoir besoin d'une copie de l'objet ArrayList, pas seulement d'une référence. Pour y parvenir, vous pouvez créer un nouvel objet ArrayList et le remplir en copiant des éléments de l'ArrayList d'origine à l'aide de méthodes de collection telles que addAll(). Ce processus crée un nouvel objet ArrayList avec sa propre structure de données sous-jacente, rendant la copie indépendante de l'original.

Exemple de code :

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]
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal