0% ont trouvé ce document utile (0 vote)
2K vues6 pages

TP2-Collections Correction

Le document présente la définition de classes Java (Etudiant, Classe, Département) pour représenter des étudiants, leurs classes et départements. Il inclut des méthodes pour ajouter, afficher et comparer ces objets.

Transféré par

gaming for fun
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)
2K vues6 pages

TP2-Collections Correction

Le document présente la définition de classes Java (Etudiant, Classe, Département) pour représenter des étudiants, leurs classes et départements. Il inclut des méthodes pour ajouter, afficher et comparer ces objets.

Transféré par

gaming for fun
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

TP2-Collections_Correction

/*****************Etudiant.java*****************************/

import java.util.Objects;

public class Etudiant implements Comparable<Etudiant>{


private int cin;
private String nom;
private double moy;

public Etudiant(int cin, String nom, double moy) {


this.cin = cin;
this.nom = nom;
this.moy = moy;
}

public int getCin() {


return cin;
}

public void setCin(int cin) {


this.cin = cin;
}

public String getNom() {


return nom;
}

public void setNom(String nom) {


this.nom = nom;
}

public double getMoy() {


return moy;
}

public void setMoy(double moy) {


this.moy = moy;
}

@Override
public String toString() {

Safa Mejdoub Page 1


return "Etudiant [cin=" + cin + ", nom=" + nom + ",
moy=" + this.moy+ "] ";
}

@Override
public boolean equals(Object o)
{
if(o==null) return false;
if(this.getClass() != o.getClass()) return false;
Etudiant E=(Etudiant)o;
if(this.cin == E.getCin())
return true;
return false;
}
@Override
public int hashCode()
{
return Objects.hash(cin);
}

@Override
public int compareTo(Etudiant E1) {
return (int)(this.moy - E1.getMoy()) ;

}}

/*****************Classe.java*****************************/
import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public class Classe implements Comparable<Classe> {


private int idC;
private int capacity;
Set<Etudiant> Etudiants = new HashSet<Etudiant>();

public int getIdC() {


return idC;
}

Safa Mejdoub Page 2


public void setIdC(int idC) {
this.idC = idC;
}
public int getCapacity() {
return capacity;
}
public void setCapacity(int capacity) {
this.capacity = capacity;
}

public void ajout(Etudiant E)


{

Etudiants.add(E);

}
//afficher les détails de la classe
void affiche()
{
System.out.println("id classe: "+ this.idC +
"capacité de la classe: "+ this.capacity);
Iterator<Etudiant> it=Etudiants.iterator();
while(it.hasNext())
System.out.println(it.next());

boolean Existe(Etudiant E)
{

return (Etudiants.contains(E));

//afficher les détails de l'étudiant ayant la meilleur


moyenne
void afficheEtudMaxMoy()
{
TreeSet<Etudiant> t = new
TreeSet<Etudiant>(Etudiants);
System.out.println("moyenne max:"+ t.last());

Safa Mejdoub Page 3


}

public static void main(String[] args) {


Classe c = new Classe();
Etudiant E1=new Etudiant(10,"A", 16);
Etudiant E2= new Etudiant(20,"B", 10);
c.ajout(E1);
c.ajout(E2);
c.affiche();
c.afficheEtudMaxMoy();
//System.out.println(c.Existe(new
Etudiant(20,"Z",10)));

}
@Override
public int compareTo(Classe o) {
return (int)(this.capacity - o.capacity);
}}

/*****************departement.java*****************************/

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Departement {


private String nomDep;
Map<Integer, Classe> Classes= new HashMap<>() ;

public void ClassesCapMax()


{
//première solution (comparable)
List<Classe> l= new
ArrayList<>(Classes.values());
Collections.sort(l);
//dernier elt
Safa Mejdoub Page 4
//sinon dans la méthode compareTo on inverse la
comparaison et on prends le premier elt
System.out.println(l.get(l.size()-1));

//deuxième solution(comparator)
capacityComparator capacityComparator = new
capacityComparator();
Collections.sort(l, capacityComparator);
//on prend le premier car on a inversé la
comparaison ds la méthode compare
System.out.println(l.get(0));
}

/*public void afficher()


{

}*/

public boolean existe(Classe C)


{
Classes.containsKey(C.getIdC());
return true;
}
/*ajouter(Classe C)
{

}*/

/*****************capacityComparator.java***************************
**/

import java.util.Comparator;

public class capacityComparator implements


Comparator<Classe>{

@Override
public int compare(Classe c1, Classe C2) {
Safa Mejdoub Page 5
return(C2.getCapacity()- c1.getCapacity());

Safa Mejdoub Page 6

Vous aimerez peut-être aussi