IFT 1170, Hiver 2005
Chapitre 10 : Liste linéaire chaînée avec la classe LinkedList
170
Liste linéaire chaînée avec Java :
En tenant compte du temps consacré à cette matière (environ deux heures seulement), de
la nature de notre cours IFT 1170 qui est très orientée objet, on décide de montrer les
listes linéaires chaînées en utilisant la classe prédéfinie LinkedList du Java. En espérant
que c’est une bonne occasion aux étudiants du IFT 1170 de revoir les concepts vus en
classe à travers les schémas, on va donner des exemples avec la classe LinkedList. Notez
que VJ++ (avec la version 1.1 de Java) ne supporte pas LinkedList . Dans les exemples
on utilise l’environnement de JDK pour compiler et exécuter.
Sous JDK :
Programme
source
en JAVA
Liste.java
compilateur
JAVA
javac Liste.java
bytecode
Liste.class
La compilation du programme Liste.java pour
fabriquer la version en bytecode Liste.class
Interpréteur JAVA =
Machine virtuelle Java +
Bibliothèque de classes
(API)
java Liste
Résultats
(excécution)
du
programme
L
L’interprétation du bytecode Liste.java
pour founir des résultats (l’exécution)
IFT 1170, Hiver 2005
Chapitre 10 : Liste linéaire chaînée avec la classe LinkedList
171
La classe LinkedList du paquet java.util
java.lang.Object
|
+-java.util.AbstractCollection
|
+-java.util.AbstractList
|
+-java.util.AbstractSequentialList
|
+-java.util.LinkedList
super classe en
Java
AbstractSequentialList
interface
List
interface
Cloneable
interface
Serializable
public class LinkedList
extends AbstractSequentialList
implements List, Cloneable, Serializable
Pour utiliser la classe LinkedList., on importe le paquet java.util :
import java.util.*;
Constructor Summary : sommaire de constructeurs
LinkedList()
Constructs an empty list : construire une liste linéaire vide.
etc….
IFT 1170, Hiver 2005
Chapitre 10 : Liste linéaire chaînée avec la classe LinkedList
172
Method Summary : résumé de quelques méthodes de gestion d’une liste
Ajout d’un élément à une liste :
void
add(int index, Object element)
Inserts the specified element at the specified position in this list.
Insérer un élement à un indice donné de la liste.
boolean
add(Object o)
Appends the specified element to the end of this list.
Insérer un objet à la fin de la liste.
void
addFirst(Object o)
Inserts the given element at the beginning of this list.
Insérer un objet au début de la liste.
void
addLast(Object o)
Appends the given element to the end of this list.
Insérer un objet à la fin de la liste.
Accès à un élément de la liste :
Object
get(int index)
Returns the element at the specified position in this list.
Retourner l’élément à un indice spécifique de la liste.
Object
getFirst()
Returns the first element in this list.
Retourner le premier élément de la liste.
Object
getLast()
Returns the last element in this list.
Retourner le dernier élément de la liste.
La taille de la liste (son nombre d’éléments) : utile pour le parcours
Int
size()
Returns the number of elements in this list.
Retourner le nombre d’élements de la liste
Modification d'un élément de la liste :
Object
set(int index, Object newElem)
Replaces the element at the specified position in this list with the
specified element :
Remplacer l’élément à l’indice par un nouvel.
IFT 1170, Hiver 2005
Chapitre 10 : Liste linéaire chaînée avec la classe LinkedList
173
Recherche dans une liste : (basée sur la redéfinition de equals)
boolean
contains(Object o)
Returns true if this list contains the specified element.
Retourner VRAI si la liste contient l’objet.
int
indexOf(Object o)
Returns the index in this list of the first occurrence of the specified
element, or -1 if the List does not contain this element.
Retourner l’indice de la première occurence de l’objet de la
liste ou -1 si la liste ne contient pas l’objet.
int
lastIndexOf(Object o)
Returns the index in this list of the last occurrence of the specified
element, or -1 if the list does not contain this element.
Retourner l’indice de la dernière occurence de l’objet de la
liste ou -1 si la liste ne contient pas l’objet.
Suppression d’un élément de la liste :
Object
remove(int index)
Removes the element at the specified position in this list.
Supprimer l’élément à tel indice.
boolean
remove(Object o)
Removes the first occurrence of the specified element in this list.
Supprimer l’objet (la première occurrence trouvée).
Object
removeFirst()
Removes and returns the first element from this list.
Supprimer et retourner le premier élément de la liste.
Object
removeLast()
Removes and returns the last element from this list.
Supprimer et retourner le dernier élément de la liste.
etc. . .
etc
IFT 1170, Hiver 2005
Chapitre 10 : Liste linéaire chaînée avec la classe LinkedList
174
Parcourir une liste :
1) Manière simple :
for ( int i = 0 ; i < liste.size() ; i++)
{
classe objet = ( . . . conversion . . .) liste.get(i) ;
. . . traiter l’objet . . .
}
2) Utilisation d’un itérateur (style de C++) :
public interface Iterator
Method Summary
boolean
hasNext()
Returns true if the iteration has more elements.
(avoir encore d’éléments)
Object
next()
Returns the next element in the iteration.
(retourner le prochain élément).
public interface ListIterator
extends Iterator
Method Summary : quelques méthodes
boolean
hasNext()
Returns true if this list iterator has more elements when traversing the
list in the forward direction.
Retourner VRAI si l’itérateur a encore d’éléments (suivants).
1 / 12 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !