Méthode getFirst() de LinkedList en Java
getFirst()est une méthode en JavaLinkedListfournie par la classe, utilisée pour obtenir le premier élément d'une liste chaînée. Cette méthode appartient à lajava.util.LinkedListclasse, et est l'une des méthodes de base pour manipuler les structures de données de listes chaînées.
Déclaration de méthode
public E getFirst()
Valeur de retour
Renvoie le premier élément (élément de tête) de la liste chaînée
Détails de la méthode
Description
getFirst()La méthode est utilisée pour récupérer sans supprimer le premier élément (élément de tête) de la liste chaînée. Cette méthode est fonctionnellement identique à lapeekFirst()méthode, mais se comporte différemment lorsque la liste chaînée est vide.
Complexité temporelle
O(1) - Car LinkedList maintient en interne une référence au nœud de tête, on peut y accéder directementExemple d'utilisation
Utilisation de base
Exemple
public class LinkedListExample {
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");
// Utiliser getFirst() pour obtenir le premier élément
String firstFruit = fruits.getFirst();
System.out.println("Le premier fruit est : " + firstFruit); // Sortie : Le premier fruit est : Apple
}
}
Comparaison avec des méthodes similaires
Exemple
numbers.add(10);
numbers.add(20);
// getFirst() et peekFirst() se comportent de la même manière dans une liste chaînée non vide
System.out.println(numbers.getFirst()); // Sortie : 10
System.out.println(numbers.peekFirst()); // Sortie : 10
// Mais elles se comportent différemment lorsque la liste chaînée est vide
numbers.clear();
// System.out.println(numbers.getFirst()); // Lève NoSuchElementException
System.out.println(numbers.peekFirst()); // Sortie : null
Notes
Gestion des exceptions
Lorsque la liste chaînée est vide, l'appel de lagetFirst()la méthode lèveraNoSuchElementException. Par conséquent, il est préférable de vérifier si la liste chaînée est vide avant de l'utiliser :
Exemple
E element = myList.getFirst();
// Traiter l'élément
} else {
System.out.println("La liste chaînée est vide");
}
Méthodes alternatives
Si vous voulez renvoyernullau lieu de lever une exception, vous pouvez utiliser lapeekFirst()méthode :
Exemple
Scénarios d'application pratiques
Scénario 1 : Traitement d'une file
Exemple
// Ajouter des commandes...
// Récupérer et traiter la première commande dans la file d'attente
if (!orderQueue.isEmpty()) {
Order firstOrder = orderQueue.getFirst();
processOrder(firstOrder);
}
Scénario 2 : Implémentation des opérations de pile
Bien que LinkedList soit généralement utilisée comme une file d'attente, elle peut également être utilisée pour implémenter une pile (dernier entré, premier sorti) :
Exemple
stack.push("First"); // Équivalent à addFirst()
stack.push("Second");
stack.push("Third");
// Afficher l'élément au sommet de la pile sans le retirer
String top = stack.getFirst(); // Renvoie "Third"
Résumé
getFirst()méthode est uneLinkedListméthode simple mais pratique de la classe, nous permettant d'accéder rapidement au premier élément d'une liste chaînée. N'oubliez pas sa différence avecpeekFirst()et choisissez la méthode à utiliser en fonction des besoins réels. Dans les cas où elle peut être vide, effectuez une vérification de null avant utilisation ou envisagez d'utiliserpeekFirst()pour éviter les exceptions d'exécution.
Java LinkedList