bonjour je n'arrive pas à extraire un string qui est à l'intérieur d'un objet qui est lui même un attribut voici le bout de code
dans mon code j'ai pu utiliser la méthode getCouleur par contre le nom du proprio n'est pas accessible
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 public boolean isDoubleLoyer(String couleur) { boolean double_loyer = false; System.out.println("couleur rechercher =====" + couleur); Case find_couleur = case_1; Case case_tmp = case_0; for (int i = 0; i < 3; i++) { case_tmp = case_tmp.getCaseNext(); if (case_tmp instanceof monopoly.CaseImo) { CaseImo case_couleur = (CaseImo) case_tmp; String nom_proprio = (String)case_couleur.getProprio().getNomGamer(); System.out.println("=================" + case_couleur.getCouleur()); System.out.println("=================" +nom_proprio); } } return false; }
j'ai essayer de caster en String pas cela ne fonctionne pas
si je fait ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 String nom_proprio = (String)case_couleur.getProprio().getNomGamer(); //Exception in thread "main" java.lang.NullPointerException
j'obtiens ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 System.out.println("=================" +case_couleur.getProprio());
voici la class gamer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2=================monopoly.Gamer@7d399ae5
voici ma class imo
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 package monopoly; public class Gamer { private Case case_courant; private boolean en_prison = false; private String nom_gamer;//nom du joueur private int porte_monnaie;//porte monnaie du joueur private int prison_sort_dans = 0; private int nb_suite_jouer = 0;//nombre de suite jouer public Gamer(String nom_gamer, int credit, Case case_courant) { this.nom_gamer = nom_gamer; this.porte_monnaie = credit; this.case_courant = case_courant; } public String getNomGamer() { return nom_gamer; }
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 CaseImo extends Case { private String case_couleur;//la couleur de la case en fonction de la rue à nul elle n'a pas de couleur private int prix_terrain; private Gamer proprio = null;//le propriétaire public CaseImo(String nom, int achat, String couleur) { super(nom); case_couleur = couleur; prix_terrain = achat; } public Gamer getProprio()//donner le propriétaire { return proprio; }
merci de vos réponse
Partager