IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

[débutant]pb de return string


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut [débutant]pb de return string
    Bonjour , j'ai un petit problème de return String

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    package ConsoleApplication1;
    import java.lang.Object;
    import java.lang.String;
    import java.io.Reader;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.FileReader;
    import java.lang.Throwable;
    import java.lang.Exception;
    import java.io.IOException;
    import java.util.List;
    import java.util.ArrayList;
    import java.lang.Number;
    import java.lang.Integer;
    import java.lang.Float;
    import java.text.*; 
     
     
    /**
     * Programme principal
     */
    public class Program
    {
    	public static void main(String[] args)
    	{
    		System.out.println("coucou");
    		String NOM = new String();
    		NOM = "rallyExia" ;
    		Jrally rally = new Jrally("16/10/2005","19/10/2005",0,0,NOM,"France");
    		System.out.println(NOM);
    		NOM = rally.getDateDebut();
    		System.out.println(NOM);
    		System.out.println(rally.getNom());
     
    		try
    		{
    			BufferedReader br = new BufferedReader(new FileReader("test.txt"));
    			String str;
    			while ((str = br.readLine()) != null)
    			{
    				if (str.compareTo("etape") == 0)
    				{
    					String km1 = br.readLine();
    					String VilleArr = br.readLine();
    					String VilleDep = br.readLine();
    					int km = new Integer(km1).intValue();
    					rally.addEtape(km, VilleArr, VilleDep);
    					System.out.println("nb etape");
    					System.out.println(rally.getListeEtape().size());
    					System.out.println(rally.getLastEtape());
    				}
    				System.out.println(str);
    			}
    			br.close();
    		}
    		catch (IOException e)
    		{
    		} 		
     
    		try
    		{
    			Thread.sleep(5000);
    		}
    		catch (InterruptedException ie)
    		{
    		}
    	}
    }
    Et voila le code de ma classe rally

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
     
    package ConsoleApplication1;
    import java.util.List ;
    import java.lang.Object;
    import java.lang.String;
    import java.util.ArrayList ;
    /**
     * Summary description for rally.
     */
    public class Jrally
    {
    	public Jrally()
    	{
     
    	}
    	// constructeur parametré
    public Jrally( String dateDeb, String dateF, int lastEta, int lastNr , String nomR ,String paysR )
    {
    if ( existeDeja() )
    {
    dateDebut = dateDeb; 
    dateFin = dateF ;
    lastEtape = 0 ;
    lastNR = 0 ;
    nom = nomR ;
    pays = paysR;
    List listeCamion;
    List listeConcurrent;
    List listeEtape;
    List listeChrono;
    }
    }
     
    // prog qui ajoute un concurrent
    public void addConcurrent( String unNom )
    {
    		lastNR++ ;
    		Jconcurrent unConcurrent = new Jconcurrent(unNom,lastNR) ;
    		listeConcurrent.add(unConcurrent);
    }
    // prog qui ajoute un véhicule 
    public void addVehicule(String type, String marque, String modele, int extra )
    {
     if ( type.compareTo("voiture") == 0 )
     {
    	 Jvoiture voiture = new Jvoiture(extra,marque,modele, lastNR);
    	 listeVoiture.add(voiture);
     }
     else
     {
    	 Jcamion camion = new Jcamion(extra, marque,modele, lastNR);
    	 listeCamion.add(camion);
     }
    }
    // prog qui ajoute un chrono
    public void addChrono(float unTemps, int unNumConcurrent, int unNumEtape)
    {
    		Jchrono chrono = new Jchrono( unTemps, unNumConcurrent, unNumEtape );
    		listeChrono.add(chrono);
    }
     
    // prog qui ajoute une étape
    public void addEtape( int unKm, String uneVilleArrivee, String uneVilleDepart )
    {
    		lastEtape++;
    		Jetape etape = new Jetape(lastEtape,unKm,uneVilleArrivee,uneVilleDepart);
    		listeEtape.add(etape);
     
    }
    // programme vérifiant l'existance d'un rally
    public boolean existeDeja()
    {
    	if (nom.compareTo("") == 0)
    	{
    		return true;
    	}
    	else
    	{
    		return false;
    	}
     
    }
     
     
    // liste des accesseurs
    // les GET
    public String getDateDebut()
    {
    return dateDebut;
    }
     
    public String getDateFin()
    {
    return dateFin;
    }
     
    public int getLastEtape()
    {
    return lastEtape;
    }
     
    public int getLastNR()
    {
    return lastNR;
    }
     
    public String getNom()
    {
    return nom;
    }
     
    public String getPays()
    {
    	return pays;
    }
     
    public List getListeCamion()
    {
    return listeCamion;
    }
     
    public List getListeConcurrent()
    {
    return listeConcurrent;
    }
     
    public List getListeEtape()
    {
    return listeEtape;
    }
     
    public List getListeChrono()
    {
    return listeChrono;
    }
    public List getListeVoiture()
    {
    return listeVoiture;
    }
    Le gros problème ,que j'ai, est que qd je demande l'affichage de "rally.getNom()" , la réponse est "null"
    Je pense que ca doit venir du String , qq1 pourrait il m'aider ?

    merci

    Babemagus

  2. #2
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Fais voir ta classe Rally en entier stp.

    Où est définie l'attribut nom.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 167
    Par défaut
    Ben t'es éléments ne sont pas défini comme attributs...donc il ne sont pas accessible dans les méthodes de classe...je pense que c'est ca...
    T'as un constructeur qui init des attributs, mais ils ne sont pas déclarés en début de classe...

  4. #4
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Citation Envoyé par tomca
    Ben t'es éléments ne sont pas défini comme attributs...donc il ne sont pas accessible dans les méthodes de classe...je pense que c'est ca...
    T'as un constructeur qui init des attributs, mais ils ne sont pas déclarés en début de classe...
    Mais dans ce cas si tu n'avais pas d'attribut nom définit tu ne pourrais pas compiler...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut
    désolé , je voulais pas surcharger la lecture
    voila la fin du code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    	private List listeVoiture = new ArrayList();
    	private List listeCamion =  new ArrayList() ;
    	private List listeConcurrent = new ArrayList() ;
    	private List listeEtape = new ArrayList();
    	private List listeChrono = new ArrayList();
    	private String dateDebut;
    	private String dateFin;
    	private int lastEtape;
    	private int lastNR;
    	private String nom;
    	private String pays;
    }
    Désolé

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Par défaut
    C'est ta méthode existeDeja() qui est fause. Ou bien son appel comme tu veux.

    Soit tu inverse le test du if soit tu l'appel avec une négation, tout dépend de la signification que tu lui donne. Mais comme tu l'as définit ici, elle ne laisse passer que les chaines vides.
    C'est pourquoi "nom" n'est pas initialisé

  7. #7
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Je vois pas comment le peut fonctionner ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // programme vérifiant l'existance d'un rally 
    public boolean existeDeja() 
    { 
       if (nom.compareTo("") == 0) 
       { 
          return true; 
       } 
       else 
       { 
          return false; 
       } 
     
    }
    devrait planter puisque tu appelles compareTo sur un null

    Secundo ne pas utiliser compareTo pour comparer des chaînes mais equals.

    E puis le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String NOM = new String();
    ne sers strictement à rien !!!

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut
    Honte sur moi , je vais aller donc me pendre.

    ca fait 1 nuit que je cherche pour rien... OUINNNNN
    Merci


    ( mais je vais encore avoir besion d'aide plus tard )

    Babemagus

Discussions similaires

  1. [Débutant(e)]Convertir un string en integer
    Par BernardT dans le forum Langage
    Réponses: 8
    Dernier message: 20/07/2010, 14h40
  2. [Débutant] transformer int to string
    Par rherrad dans le forum Langage
    Réponses: 2
    Dernier message: 26/11/2005, 12h23
  3. [Débutant(e)]convertir un string en entier
    Par harris_macken dans le forum Langage
    Réponses: 2
    Dernier message: 01/04/2005, 07h20
  4. [Débutant] Conversion d'un String en Int
    Par chleuh dans le forum Langage
    Réponses: 9
    Dernier message: 30/12/2004, 13h33
  5. [débutant]travailler sur contenu string
    Par Serge76 dans le forum SL & STL
    Réponses: 13
    Dernier message: 06/11/2004, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo