Listes chaînées
Il y a plusieurs façons de représenter les listes chaînées en Java. La méthode utilisée est alors de parcourir la liste avec deux références :.
Collections en Java
Pour parcourir une liste il a été défini un itérateur spécialement pour la liste. public interface ListIterator extends Iterator { boolean hasNext();.
Chapitre 8 Collections en Java
Pour parcourir une liste il a été défini un itérateur spécialement pour la liste. public interface ListIterator extends Iterator { boolean hasNext();.
Collections : listes
Le concept de liste est représenté dans l'API Java par l'interface List du paquetage Les collections dont on peut parcourir les éléments offrent.
Chapitre 10 Listes chaînées
Il est possible de parcourir la liste doublement chaînée du premier élément vers le dernier. Le pointeur de parcours P
Collections : listes Collections
Le concept de liste est représenté dans l'API Java par l'interface List du paquetage Les collections dont on peut parcourir les éléments offrent.
Manipulation de XML avec JDOM et Java
http://cynober.developpez.com/tutoriel/java/xml/jdom/. JDOM Parcourir un fichier XML ... Une fois le filtre créé nous pourrons récupérer une liste.
Programmer en Java 6e Èdition
Ainsi à une liste chaînée LinkedList<String>
Les objets en Java Plan Types et Classes Exemple 1: fraction
Second exemple: une liste. • L'héritage en Java. Types et Classes. • Types primitifs Nécessité de parcourir la liste. • Affichage de la liste:.
Documentation (1/3)
En Java l'outil javadoc (fourni avec le JDK) permet de générer une ListIterator
Parcourir une liste en Java - WayToLearnX
17 mar 2020 · Dans ce tutoriel nous allons découvrir différents façons pour parcourir une liste en Java Exemple 1 : En utilisant List toString()
Parcourir un ArrayList en Java - WayToLearnX
19 mar 2020 · Dans ce tutoriel nous allons découvrir différents façons pour parcourir un ArrayList en Java en utilisant: La boucle for; La boucle for-each
[PDF] Collections en Java
Pour parcourir une liste il a été défini un itérateur spécialement pour la liste public interface ListIterator extends Iterator { boolean hasNext(); Object
[PDF] Chapitre 12 - Utilisation dobjets : String et ArrayList - Cnam
En java les chaînes de caractères sont des objets Nous allons apprendre dans ce chapitre à mieux les utiliser La seconde classe s'appelle ArrayList Les
[PDF] Collections : listes - Pratique de la programmation OO
Pour chaque type de collection (liste ensemble etc ) l'API Java contient généralement : – une interface qui décrit les opérations offertes par la
Utiliser la classe Iterator pour parcourir une ArrayList - - C/C++
code source import java util ArrayList; import java util Iterator; public class ArrayL_Iter { java exemple tutoriel cours
[PDF] Collection - IGM
L'API des collections (java util) fournit les List of() avec un tableau d'objets copie les valeurs Comment faire pour les parcourir ?
[PDF] Les Collections - IGM
La classe java util List liste indexée ou séquentielle – Queue file (FIFO) de données Pour parcourir une collection on utilise un objet
Développons en Java - Les collections - Jean-Michel Doudoux
List : collection d'éléments ordonnés qui accepte les doublons; Set : collection L'interface Enumeration permet de parcourir le contenu de ces objets
[PDF] Programmation Objet Java–Collections - lamsade
Java–Collections List: suite d'éléments de type E (avec duplication) Autre manière de parcourir une collection : on utilise un Iterator
Programmation Objet 1 - Compléments Java1La structure des programmes objets et leur modularité permet de créer une
documentation structurée facilement utilisable. La documentation permet la réutilisation des programmes et leur extension. Un programme n'est jamais trop documenté. En Java, l'outil javadoc (fourni avec le JDK) permet de générer une documentation HTML à partir de commentaires contenus dans le code. Il est également possible de fournir à l'outil javadoc des fichiers de documentation des paquetages, des images, etc.Documentation (1/3) Programmation Objet 1 - Compléments Java2Documentation (2/3) Chaque entité (classe, attribut, méthode, etc) peut être commentée. Un commentaire s'écrit entre /** et */. Les commentaires peuvent contenir des tags prédéfinis. /** Cette classe mod\u00e8lise les primates bip\u00e9des *![](vitruve.jpg)
Programmation Objet 1 - Compléments Java4En plus des tableaux, Java offre dans le package java.util des classes
implémentant des structures de données: listes, ensembles, tableaux associatifs, tables de hachage, et même des arbres.Structures de données en Java
Collection
ListSetQueueDequeMap
LinkedListAbstractMap
HashMapHashTable
TreeMap
StackHashSetEnumSet
Programmation Objet 1 - Compléments Java5Collection est une interface générique qui offre des méthodes d'ajout, de
suppression, de recherche, etc. Iterator est une interface offrant des méthodes pour le parcours séquentiel d'une structure linéaire.Collection boolean add(T o) void clear() boolean contains(Object o) boolean remove(Object o) int size()T[] toArray(T[] t)
Iterator iterator()
boolean hasNext() T next()
void remove()Programmation Objet 1 - Compléments Java6L'interface Iterator permet de supprimer des éléments en cours de parcours
(méthode remove).Syntaxe de type foreach (ne permet pas la modification en cours de parcours) :ListIterator, sous interface de Iterator, permet de parcourir une liste dans
les deux sens (seulement pour les List).IteratorArrayList l = new ArrayList();
for(int i=0;i<100;i++) l.add((int) (Math.random()*100)); for(Iterator i = l.iterator();i.hasNext();){ System.out.println(i.next());
ArrayList l = new ArrayList();
for(int i=0;i<100;i++) l.add((int) (Math.random()*100)); for(Integer i : l){ System.out.println(i.next());
Programmation Objet 1 - Compléments Java7List est une interface qui ajoute à Collection des méthodes de consultation :List est implémentée par ArrayList, Vector, LinkedList, etc.
ArrayList est une implémentation de liste par tableau, efficace pour l'accès auxéléments, mais non synchronisée.
Vector est une implémentation de liste par tableau et synchronisée, donc un peu moins efficace qu'ArrayList, mais sans problème d'accès concurrent de threads différents. LinkedList est une implémentation de liste doublement chainée, non synchronisée, efficace pour l'ajout ou la suppression d'élément.List (1/2)T get(int i)
int indexOf(Object o)Programmation Objet 1 - Compléments Java8Les accés à une liste doivent être synchronisés sous peine de comportement
incohérent. Pour avoir une liste synchronisée, utiliser une classe de listes synchronisées ou la méthode de synchronisation de la classe Collections :List (2/2) l.remove(4);23791processus p1
l.remove(4);processus p2LinkedList l = new LinkedList();
for(int i=0;i<12;i++) l.add("A"+i); ListProgrammation Objet 1 - Compléments Java9Set est une interface pour les ensembles d'éléments forcément différents (au sens
de equals pour les objets). Set est implémentée par EnumSet et HashSet.EnumSet est une implémentation d'ensemble pour les types énumérés : HashSet est une implémentation d'ensemble par table de hachage.
Les Set peuvent aussi être synchronisés.Set
enum ArcEnCiel{rouge, orange, jaune ,vert, bleu, indigo, magenta, violet}; public static void main(String[] arg){ EnumSetSystem.out.println(i.next());
Programmation Objet 1 - Compléments Java10Map est interface de tableau associatif (couples clé-valeur).
HashMap est une implémentation de Map par table de hachage, non synchronisée, avec possibilité de clé et valeur null. Hashtable est une implémentation de Map par table de hachage, synchronisée, et n'autorise pas les valeurs null.MapV put(K a, V b)
V get(Object o)
V remove(Object o)
Set keySet()
Collection values()
int size() HashMapProgrammation Objet 1 - Compléments Java11Collections est une classe offrant des méthodes static de manipulation de
Collection : synchronisation, tri, recherche, inversion, permutation, etc Il existe aussi une classe Arrays qui offre les mêmes méthodes pour les tableaux.CollectionsLinkedList l = new LinkedList();
int[] t = {0,0,0}; l.add(t);l.add(t); t = new int[4]; for(int i=0;iCollections.reverse(l);
Programmation Objet 1 - Compléments Java12Les méthodes de Collections, en particulier de tri, utilise des méthodes
de comparaisons.Exemple : on veut trier une liste de personnes par nom ou par âge.Il faut que les objets de la liste implémentent des méthodes de
comparaison. Par défaut, Collections.sort(List l) utilise l'interfaceComparable.Comparable et Comparator (1/3)
class Personne{String nom, prenom;
int age; static LinkedListCollections.sort(gens);
Programmation Objet 1 - Compléments Java13On peut spécifier la méthode de comparaison à utiliser en implémentant l'interface
Comparator.Comparable et Comparator (2/3)
class Personne implements ComparableString nom, prenom;
int age; static LinkedListCollections.sort(gens);
class ComparePersonneParAge implements ComparatorProgrammation Objet 1 - Compléments Java14Comparator est un exemple de l'utilisation du patron de conception Strategy, dont
le but est de permettre de modifier le comportement des objets au cours de l'exécution du programme.Comparable et Comparator (3/3) class Personne implements ComparableString nom, prenom;
int age; static LinkedListCollections.sort(gens);
Collections.sort(gens,new ComparePersonneParAge());Programmation Objet 1 - Compléments Java15Sérialiser un objet consiste à le sauvegarder dans un fichier ou un flux.
- échange d'objets entre applications distantes - sauvegarde de l'état d'exécution d'un programme Il faut sauvegarder les valeurs d'attributs et la façon de recréer l'objet (classe avec constructeur) Tout objet implémentant l'interface java.io.Serializable est sérialisable. Serializable n'a aucune méthode (interface de marquage). Les interfaces ObjectOutput et ObjectInput offrent des méthodes de sérialisation et de désérialisation : void writeObject(Object o)Object readObject()Sérialisation (1/2)
Programmation Objet 1 - Compléments Java16Comportement par défaut de la sérialisation : toutes les valeurs des attributs non
static ou transient sont sauvées. Des informations sur la classe (types et noms des attributs) sont aussi sauvées pour permettre de recréer l'objet.Sérialisation (2/2) class C implements Serializable ...C c = new C();
File f = new File("Toto.truc");
ObjectOutput os = new ObjectOutputStream(new FileOutputStream(f)); os.writeObject(c); os.close(); ObjectInput is = new ObjectInputStream(new FileInputStream(f));C c = (C) is.readObject();
is.close(); Programmation Objet 1 - Compléments Java17Clonage (1/2) Cloner un objet consiste à le répliquer, avec les mêmes valeurs d'attribut. - préserver l'état d'un objet avant un traitement - gagner du temps si la création par constructeur est très lourde Tout objet implémentant l'interface java.lang.Cloneable est clonable. Cloneable n'a aucune méthode (interface de marquage). cloner = appeler la méthode Object clone() de la classe Object Clonage de surface : on ne clone pas les valeurs des attributs - comportement par défaut de la méthode clone() Clonage profond : on clone récursivement les valeurs, jusqu'à aboutir à des valeurs de types primitifs Clonage semi-profond : on s'arrête avant de toucher le fond Programmation Objet 1 - Compléments Java18Clonage (2/2) public class Personne implements Cloneable{ private String nom; private ArrayListPersonne(String n){
this.nom = n; this.amis = newArrayListPersonne p = new Personne(this.nom);
for(Personne e:this.amis) p.addAmi(e); return p; public Object deepCopy(){Personne p = new Personne(this.nom);
for(Personne e:this.amis) p.addAmi((Personne) e.deepCopy()); return p; une sérialisation suivie d'une désérialisation = un clonage profondquotesdbs_dbs44.pdfusesText_44[PDF] hashtable java open classroom
[PDF] guerre de tranchées date
[PDF] exercices corrigés sur les collections en java pdf
[PDF] java liste vide
[PDF] cours php pdf complet
[PDF] parcours 3éme année du cycle secondaire collégial
[PDF] référentiel parcours avenir
[PDF] contraintes du parcours avenir
[PDF] parcours avenir folios
[PDF] les grandes phases de la seconde guerre mondiale
[PDF] epi parcours avenir stage
[PDF] l'immigration irlandaise aux etats unis
[PDF] immigration aux etats unis au 20eme siecle
[PDF] intégration irlandaise aux etats unis