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 :

problème avec StringBuffer []


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Par défaut problème avec StringBuffer []
    bonjour,

    pourquoi ce code génère une erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    		public void test (  ) 
    		{
    			StringBuffer [] a=new StringBuffer[10];
    			a[0].append("test");
    		}

  2. #2
    Membre éprouvé Avatar de nicgando
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 128
    Par défaut
    Parce que tu as un tableau de 10 StringBuffer mais tu n'as les StringBuffer dedans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public void test (  ) 
    		{
    			StringBuffer [] a=new StringBuffer[10];
                            for(int i =0; i < a.length; i++)
                                   a[i] = new StringBuffer();
     
    			a[0].append("test");
    		}

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Par défaut
    Citation Envoyé par nicgando
    Parce que tu as un tableau de 10 StringBuffer mais tu n'as les StringBuffer dedans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public void test (  ) 
    		{
    			StringBuffer [] a=new StringBuffer[10];
                            for(int i =0; i < a.length; i++)
                                   a[i] = new StringBuffer();
     
    			a[0].append("test");
    		}
    oups merci

  4. #4
    Membre éprouvé
    Avatar de moritan
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2005
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2005
    Messages : 687
    Par défaut
    Citation Envoyé par youp_db
    bonjour,

    pourquoi ce code génère une erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    		public void test (  ) 
    		{
    			StringBuffer [] a=new StringBuffer[10];
    			a[0].append("test");
    		}
    Simplement parceque a[0] n'a jamais était initialisé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public void test (  ) 
    		{
    			StringBuffer [] a=new StringBuffer[10];
                            a[0]=new StringBuffer();
    			a[0].append("test");
    		}
    Dans ta version du code tu dit que tu faut un tableau mais tu ne le rempli pas donc il te renvioie une exception quand tu cherches à utiliser un objet qui n'existe pas


    Edit : grilled

  5. #5
    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 youp_db
    bonjour,

    pourquoi ce code génère une erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
            public void test (  ) 
            {
                StringBuffer [] a=new StringBuffer[10];
                a[0].append("test");
            }
    Ton code créé un tableau de StringBuffer de taille 10 !!!!!!!!!!!!!!!!! Quel est l'intérêt, aucun pour moi.... mais passons.

    De plus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object[] tab = new Object[10]
    crée un nouveau tableau d'objet de taille 10 avec une valeur par défaut pour chaque "case", à savoir nul dans le cas d'un Objet.

    Bond pour initialiser chaque case du tableau tu dois faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    tab[0] = new Object();
    tab[1] = new Object();
    ...
    tab[n-1] = new Object();
    Si tu veux utiliser un StringBuffer c'est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void test()  {
      StringBuffer buffer = new StringBuffer();
      buffer.append("test");
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. StringBuffer (Problème avec .append())
    Par Ezarion dans le forum Langage
    Réponses: 7
    Dernier message: 19/01/2007, 17h06
  2. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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