Bonjour,
je voudrais créer un petit programme pour naviguer sur les rames de métro parisien , je me base sur un TD que j'ai trouvé sur le site de polytech paris;
pour le moment je m'en sortais pas trop mal , mais je suis bloqué sur un exo, et j'ai besoin d'aide.
voici mes Class :
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 public class ListeStations { Station station; ListeStations suivant; public ListeStations(Station station, ListeStations suivant) { //initialisation des champs this.station=station; this.suivant=suivant; } public void afficher() { ListeStations suite = this; while (suite != null) { System.out.print(" " +suite.station.chaineLigneNom()+", "); suite = suite.suivant ; } } }
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
38
39
40
41
42
43
44
45
46
47
48
49
50 public class Station { String nom; //nom de la station String ligne; //ligne du métro ListeStations voisines; //station suivante int ordreDeVisite; //ordre sur la ligne public Station(String nom, String ligne, ListeStations voisines) { //initialisation des champs this.nom=nom; this.ligne=ligne; this.voisines=voisines; ordreDeVisite = 0; } public String chaineLigneNom() { //affichage de la chaine de caractére return ligne+"-"+nom ; } public void afficher() { System.out.println("Station : "+nom); System.out.println("Ligne : "+ligne); if (ordreDeVisite == 0) { System.out.println("ordre de visite : jamais visite. "); } else { System.out.println("ordre de visite : "+ ordreDeVisite); } if (voisines == null) { System.out.println("Stations voisines : aucune "); } else { System.out.println("Stations voisines : "+voisines); } } public void ajouterVoisine(Station s) { voisines= new ListeStations(s, voisines); } }et mon résultat :
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 public class TestListeStations { public static void main(String[] args) { Station[] station = new Station[4]; station[0] = new Station("Denfert-Rochereau", "6", null); station[1] = new Station("Saint-Jacques", "6", null); station[2] = new Station("Glacière", "6", null); station[3] = new Station("Odéon", "10", null); station[0].ordreDeVisite=1; station[1].ordreDeVisite=2; station[2].ordreDeVisite=3; station[0].ajouterVoisine(station[1]); station[1].ajouterVoisine(station[0]); station[1].ajouterVoisine(station[2]); station[2].ajouterVoisine(station[1]); for (int i = 0; i < 4; i++) station[i].afficher(); } }
alors je tourne en rond , je comprend pas pourquoi il m'affiche ListeStations@9931f5.Station : Denfert-Rochereau
Ligne : 6
ordre de visite : 1
Stations voisines : ListeStations@1690726
Station : Saint-Jacques
Ligne : 6
ordre de visite : 2
Stations voisines : ListeStations@5483cd
Station : Glacière
Ligne : 6
ordre de visite : 3
Stations voisines : ListeStations@9931f5
Station : Odéon
Ligne : 10
ordre de visite : jamais visite.
Stations voisines : aucune
Merci de votre aide.
Partager