Bonjour
Je travail sur un projet que je dois rendre.
J'ai taper un code voir ci dessous en utilisannt une liste chainée. Cependant lorsque je souhaite afficher le contenu du tableau (ref.tab[0], ref.tab[1]) de ma liste chainée, j'ai l'impression que chaque élément pointe sur le meme objet.
Je ne suis pas arrivé a trouver ou cela cloché.
Si une personne pouvait regarder et me dire ou est le problème
Je vous remercie d'avance
Salutations
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public class Joueurs{ // definition des joueurs String nomjoueur;// nom du joueur int [] jet; //jeton du joueur int carte1,carte2; int[]tab = new int[2]; Joueurs suivant;//pointeur
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 class listejoueur{// liste chaine des joueurs Joueurs premier, dernier ,ref1 ,ref,pointeur; // deifinition des pointeurs // ajouter les joueurs en fin de liste public void ajouterfin(String nom, int[] jet){ Joueurs ref=premier;// je pointe en debut de liste if (premier==null){ premier=new Joueurs (nom, jet, pointeur,table); ref=premier; dernier=premier;}//si liste chainée vide else {dernier.suivant=new Joueurs(nom, jet, pointeur,table); dernier=dernier.suivant;}/* si liste chainé contient des éléments ajouter en fin de liste*/ } //distribution des cartes au joueurs public listejoueur distribution(listejoueur liste){ ref=liste.premier; while (ref!=null){ ref.tab[0]= (int)(Math.random()*52); ref.tab[1]= (int)(Math.random()*52); ref=ref.suivant; }ref=liste.premier; while(ref!=null){ Terminal.ecrireIntln(ref.tab[0]); ref=ref.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 class initialisation { static int nbJoueur;//nb de joueur participant au jeu static String nomJoueur; // nom des joueur static int gain=0;//gain des joueur int[] jet={100,120};//Jetons des joueurs int[] lj={}; JeuxCarte car=new JeuxCarte();// Paquet de carte static InterfacePoker ti; misedesjoueurs mise; listejoueur liste; //Initialisation de la fenetre public static void init(){ Terminal.ecrireStringln("BIENVENUE AU JEU DE POKER"); Terminal.sautDeLigne(); Terminal.ecrireString("Veuillez entrer le nombre de joueur "); nbJoueur=Terminal.lireInt(); Terminal.sautDeLigne(); //declaration et Initialisation des joueurs, du Joueur Humain et du Jeux de carte public void declarationjoueur (){ liste=new listejoueur(); for (int i=1; i<=nbJoueur;i++ ) { Terminal.ecrireString("Le nom du joueur "+i+" "); nomJoueur=Terminal.lireString(); liste.ajouterfin(nomJoueur, jet); ti.declareJoueur(nomJoueur, jet); } ti.fixeJeuHumain(lj); ti.fixeJetonsHumain(jet); car.Initialisation(); } //initialisation du jeux de carte //distributions des cartes public void distribution(){ liste.distribution(liste);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public class Projet { public static void main(String[] args) { initialisation ru=new initialisation(); ru.init(); ru.declarationjoueur(); ru.afficheFen(); ru.distribution(); }}
Partager