Bonjour à tous,
mon problème est le suivant.
j'ai les classes suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public class Personne{ String nom; String prenom; Personne(){ System.out.println("Nom ? "); nom = Clavier.lireString(); System.out.println("Prenom ? "); prenom = Clavier.lireString(); } Personne( String nom, String prenom){ this.nom = nom; this.prenom = prenom; } public String toString(){ String s = "\nMon nom est "+nom+"\nMon Prenom est "+prenom; return s; } }je dois transformes la classe Etu7 de facon a trier les étudaiants selon l'ordre alphabétique du nom et du prenom au lie de l'ordre croissant des numéros. mais je ne sais pas comment je peux faire si quelqu'un peut me donner un petit coup de main, je serais vraiment reconnaissant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 import java.util.Arrays; public class Etu7 extends Personne implements Comparable{ static int dernierNum=0; int num; Etu7(){ num= ++dernierNum; } public String toString(){ String s = (super.toString())+ "\nmon numéro est "+num; return(s); } public void affiche(){ System.out.println(this); } public int compareTo(Object et){ if(this.num <((Etu7)et).num) return -1; else if(this.num == ((Etu7)et).num) return 0; return +1; } public static void main(String args[]){ Etu7 tabEt[] = new Etu7[2]; for (int i=0; i<tabEt.length;i++){ tabEt[i]= new Etu7(); } for (int i=0;i<tabEt.length;i++){ tabEt[i].affiche(); } Arrays.sort(tabEt); for (int i=0; i<tabEt.length;i++){ tabEt[i].affiche(); } } }
merci d'avance
Mario
Partager