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

Collection et Stream Java Discussion :

programme qui ne reconnait pas la taille d'un tableau


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 67
    Par défaut programme qui ne reconnait pas la taille d'un tableau
    Bonjour,
    j'ai crée 3 objets "capitale" dont les variables d'instances sont des noms de villes et des noms de pays.
    j'ai ensuite mis ces objets dans un tableau "repertoire"
    puis créer un nouveau tableau avec une case en plus qui doit contenir un nvl objet "capitale"
    mais mon programme ne veut pas s'executer.
    mon tableau initial a pourtant été initialisé avec une taille égale à 3.
    Pourriez-vous m'aider à détecter le hic? je vous remercie

    le message d'erreur est le suivant:

    capitalo.java:42:array required, but Repertoire found
    R[0]=new Capitale("paris","france");
    capitalo.java:43:array required, but Repertoire found
    R[1]=new Capitale("rome","italie");
    capitalo.java:44:array required, but Repertoire found
    R[2]=new Capitale("espagne","espagne");

    voici mon code:

    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
    class Capitale{
    	String ville;
    	String pays;
     
    	public Capitale(String v,String p){
    		this.ville=v;
    		this.pays=p;
    	}
     
    	void affiche(){
    		System.out.println("ville "+this.ville);
    		System.out.println("pays "+this.pays);
    	}
    }
     
    class Repertoire{
    		Capitale[]R;
     
    		public Repertoire(int t){
    		     R=new Capitale[t];
    		}
     
    		void ajouter(Capitale C){
    			Capitale[]R1=new Capitale[R.length+1];
    			for (int i=0;i<this.R.length;i++){
    				R1[i]=this.R[i];
    			}
    			R1[this.R.length]=C;
    			this.R=R1;
    		}
     
    		void afficher(){
    			for(int i=0;i<this.R.length;i++){
    				R[i].affiche();
    			}
    		}
    }
     
    public class capitalo{
    	public static void main(String[]args){
    	Repertoire R=new Repertoire(3);
    	R[0]=new Capitale("paris","france");
    	R[1]=new Capitale("rome","italie");
    	R[2]=new Capitale("madrid","espagne");
    	R.ajouter(new Capitale("bruxelles","belgique"));
    	R.afficher();
    	}
    }

  2. #2
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Dans ton main tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Repertoire R=new Repertoire(3);
    	R[0]=new Capitale("paris","france");
    	R[1]=new Capitale("rome","italie");
    	R[2]=new Capitale("madrid","espagne");
    	R.ajouter(new Capitale("bruxelles","belgique"));
    Tu déclare un objet Repertoire (qui est un objet et non pas un tableau) puis tu essaye d'y accéder comme s'il était un tableau. Je suppose que tu essaye de manipuler le tableau qui est contenu dans Repertoire mais tu ne peut pas. Il faut que tu utilise des méthode d'accès à ce tableau (comme tu l'as fait avec la méthode ajouter).

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 67
    Par défaut
    ah oui, en effet, la tableau est dans le cas présent un objet et je dois le manipuler comme tel, d'ou la nécessité d'une extention pour y accéder. Je n'y avais pas pensé.

    je viens d'y apporter les modifications et ça marche enfin.

    merci guigui5931 pour ton aide.

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

Discussions similaires

  1. Une image qui ne change pas la taille d'une cellule d'un tableau
    Par guejo dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 08/12/2006, 14h51
  2. Programme qui ne réalise pas le tri
    Par Premium dans le forum C
    Réponses: 3
    Dernier message: 02/08/2006, 14h14
  3. Programme qui ne fonctionne pas
    Par jipé95 dans le forum C
    Réponses: 7
    Dernier message: 26/04/2006, 19h08
  4. Réponses: 18
    Dernier message: 13/12/2005, 13h27
  5. Une requête qui ne reconnait pas is not null
    Par LeBauw dans le forum Access
    Réponses: 2
    Dernier message: 08/09/2005, 12h29

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