Méthode set() de Java LinkedList
LinkedListest une classe importante du Java Collections Framework, elle implémenteListl'interface.set()la méthode estLinkedListune méthode très utile fournie par la classe, utilisée pour remplacer l'élément à la position spécifiée dans la liste chaînée.
En termes simples,set()la méthode vous permet de :
- Accéder à une position spécifique dans la liste chaînée par index
- Remplace l'ancien élément à cette position par un nouvel élément
- Renvoie l'ancien élément qui a été remplacé
Syntaxe de la méthode
set()La syntaxe complète de la méthode est la suivante :
Description des paramètres :
index: La position de l'élément à remplacer (en comptant à partir de 0)element: Le nouvel élément à stocker à la position spécifiée
Valeur de retour :
- Renvoie l'ancien élément qui a été remplacé
Exemple d'utilisation
Comprenons à l'aide d'un exemple de code completset()l'utilisation de la méthode :
Exemple
public class LinkedListSetExample {
public static void main(String[] args) {
// Créer une LinkedList
LinkedList<String> fruits = new LinkedList<>();
// Ajouter des éléments
fruits.add("Pomme");
fruits.add("Banane");
fruits.add("Cherry");
fruits.add("Date");
System.out.println("LinkedList d'origine : " + fruits);
// Utiliser la méthode set() pour remplacer le deuxième élément
String replaced = fruits.set(1, "Blueberry");
System.out.println("Élément remplacé : " + replaced);
System.out.println("LinkedList modifiée : " + fruits);
}
}
Sortie :
原始链表: [Apple, Banana, Cherry, Date] 被替换的元素: Banana 修改后的链表: [Apple, Blueberry, Cherry, Date]
Notes
Exception d'indice hors limites
Si l'indice spécifié est en dehors de la plage de la liste chaînée (index < 0 ou index >= size()),set()la méthode lèveraIndexOutOfBoundsException。
Exemple
fruits.set(4, "Figue");
Considérations de performance
PuisqueLinkedListest implémentée sur la base d'une liste chaînée,set()la méthode doit parcourir la liste chaînée pour trouver l'élément à la position spécifiée, donc :
- La complexité temporelle moyenne est O(n)
- Pour les scénarios nécessitant un accès aléatoire fréquent,
ArrayListpeut être un meilleur choix
Valeurs null non autorisées
SiLinkedListn'autorise pas les éléments null (selon l'implémentation spécifique), tenter de définir une valeur null peut lever une exceptionNullPointerException。
Comparaison avec d'autres méthodes
set() vs add()
set(): Remplace l'élément à la position spécifiéeadd(): Insère un nouvel élément à la position spécifiée, en décalant l'élément d'origine vers l'arrière
set() vs get()
set(): Modifie l'élément à la position spécifiée et renvoie l'ancienne valeurget(): Récupère uniquement l'élément à la position spécifiée sans modifier la liste chaînée
Scénarios d'application pratiques
set()La méthode est particulièrement utile dans les scénarios suivants :
- Mise à jour d'éléments spécifiques dans une liste chaînée
- Remplacer les enregistrements d'historique lors de l'implémentation de la fonctionnalité annuler/rétablir
- Modification des données d'étapes intermédiaires dans les algorithmes
- Mise à jour des états d'objets dans le développement de jeux
Résumé
LinkedListdeset()La méthode est un outil simple mais puissant qui permet aux développeurs de modifier précisément des éléments spécifiques dans une liste chaînée. Comprendre son fonctionnement et ses limites vous aidera à l'utiliser plus efficacement dans la programmation réelle.LinkedListcollections.
Java LinkedList