0% ont trouvé ce document utile (0 vote)
5 vues21 pages

Notes sur JAVA : Concepts et Collections

Transféré par

Arcendivez
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues21 pages

Notes sur JAVA : Concepts et Collections

Transféré par

Arcendivez
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chedly Zouche 2019 - 2020

Notes JAVA (importations - TPs -


Activité 1)

Intro P1
Scanner s = new scanner([Link])
Int n = [Link]()
Chedly Zouche 2019 - 2020

Packages et interfaces
Chedly Zouche 2019 - 2020

Interfaces :
Chedly Zouche 2019 - 2020
Chedly Zouche 2019 - 2020

Expressions lambdas
Chedly Zouche 2019 - 2020

References_méthodes

Reference to an instance method :


Chedly Zouche 2019 - 2020
Chedly Zouche 2019 - 2020

Classes génériques
Classe<?>
Accepte n’importe quelle classe
Classe<? extends type>
Accepte n’importe quelle classe fille de type
classe <? super type>
Accepte tout les ascendants de type

Instantiation :
classe<type_generique> nom_var = new classe<> ()
Chedly Zouche 2019 - 2020

Exceptions
Classe throwable :
- Throwable(String s)
- String getMessage()
- Void printStackTrace()

Error Herite de Throwable :


- Erreurs critiques non sensés etre geré par notre programme
- Le programme s’arrete automatiquement
Exception herite de Throwable :
- Doivent etre traités

Si l’exception ne va pas etre traité localement, on doit ajouter throws TypeException


dans l’entete de la méthode (Ceci est recurisf )
Sinon on la traité avec :
try {}
catch (Exception e) n’importe exception{}
Catch (TypeException e){}
Finally{} (cleanup code, fermeture de fichier connexions - va etre executé meme s’il ya un return
dans le catch ou try)

Custom Exception

Classes de base
Classe object :
toString() : Retourne nom_classe@adresse_objet
equals () : retourne boolean @objet1 == @objet2
finalize () : “destructeur” invoqué avant la destruction d’un objet
clone() : instancie un nouveau objet copie de this
Il faut que la classe implémente l’interface clonable
Chedly Zouche 2019 - 2020

Classe Class :
[Link]()-> renvoie un objet de type Classe
[Link]() : Renvoie le nom de la classe
Class. getSuperclass() : renvoie des informations de type Class sur la super classe.
[Link] : = getName() + “class” || “interface” selon le cas

StringBuffer :
Représente des chaines de tailles variables
On ne peut pas utiliser “+” comme avec String

StringTokenizer:
StringTokenizer st = new StringTokenizer(texte, “,:”)
Découpe le texte en des tokens à chaque “,” ou “:”
Chedly Zouche 2019 - 2020

Collections
Vecteurs Dynamiques : ArrayList, Vector
Listes chainées : LinkedList
Ensembles ‘Set’ : HashSet - TreeSet
PriorityQueue - ArrayDecque

Interface Collection :
Int size()
Boolean Contains(element)
Boolean isempty()
Boolean add(element)
Boolean remove(element)
Iterator iterator()
Int hashCode()
Boolean equals(element)

Boolean add/remove/containsAll(collection)
Void clear()

Interface Iterator :
Boolean hasNext()
Obj next()
Void remove()
Exemple :
Collection c = new …
Iterator it = [Link]()
While ([Link]()){
Element = [Link]()
….
}

Interface Set :
Herite de Collection
La seule différence est que les élements ne sont pas dupliqués
SortedSet hérite de Set
A = {1,2,3}

Classe TreeSet, HashSet implémentent Set et SortedSet :


Exemple :
Set a = new HashSet();
[Link](“eqsd”);
….
// l’ajout d’un élément déja existant n’implique pas un erreur
Chedly Zouche 2019 - 2020

a ne sera pas trié


Set b = new TreeSet(a)
b sera trié

Interface List :
Hérite de collection
Obj get(index);
Obj set(index, element)
Void add(index, element)
Obj remove(index)
Boolean addAll(index, collection)
Int indexOf(element)
Int lastIndexOf(element)
ListIterator listIterator(index(”optionnel”))
List subList(fromindex,toIndex)

Interface ListIterator :
Hérite de Iterator
Permet le parcours dans les deux sens
++
Boolean hasPrevious()
Obj previous()
Void set(element)
Void add(element)
Int nextIndex()
Int previousIndex()
Exemple : Parcours à l’envers :
ListIterator it = new [Link]([Link]())
While ([Link]()){
….
}

Classe LinkedList :
Previous du premier element est Null
Next du dernier element est Null
Void addFirst(element)
Void removeLast(element)
Pour l’insertion au milieu on utilise l’iterator [Link]() , [Link](element)

Classe ArrayList :
Plus rapide en lecture que linkedList
Moins rapide en écriture modification au milieu de la liste
Boolean contains(element)
Chedly Zouche 2019 - 2020

For (type element : arrayListName)


[Link](callback/reference.../ Exemple : [Link]::println)

Pour les collections génériques, la déclaration de l’iterator doit être générique aussi.

Interface Map :
Object put (obj key, obj value)
Object get(obj key)
Object remove(obj key)
Boolean containsKey(obj key)
Boolean containsValue(obj value)
Int size()

Interface Entry :
Obj getKey()
getValue()
setValue(obj value)

Algorithmes manipulant les collections :


sort(list)
sort(list, Comparator comp)
shuffle(list)
reverse(list)
fill(list,element)
copy(listsrc,listdest)
Min,max…

Interface Queue : fifo


Boolean offer(element) ajout
Obj pull() renvoie et supprime
Obj peek renvoie

Classe PriorityQueue :

Interface Comparator :
Int compareTo(obj) ->
Object faisant l’appel est plus petit : <0
== : =0
Sinon >0

Implémentation d’un comparator dans une classe :


Chedly Zouche 2019 - 2020

Interface Deque :
add/get/removeFirst/Last()
offer/peek/poll

API Stream
Generation de stream :
Chedly Zouche 2019 - 2020
Chedly Zouche 2019 - 2020

Méthodes intermédiaires :
Chedly Zouche 2019 - 2020

Filter :

Map : (prend en paramétre “new Function<TypeEntree,TypeSortie> {TypsSortie


apply(TypeEntree){}”)
Chedly Zouche 2019 - 2020

Sorted :
Chedly Zouche 2019 - 2020

Collect :
Chedly Zouche 2019 - 2020

Les terminals :

Optional et comparateurs :
Chedly Zouche 2019 - 2020

Vous aimerez peut-être aussi