Rechercher : dans
Par :

Tableau d'Objets en JAVA qui ne s'affiche pas

Dernière réponse le 29 mar 2009 à 06:13:02 clemence, le 29 mar 2009 à 04:08:50 
 Signaler ce message aux modérateurs

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 à trouver 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:

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();
}
}

Configuration: Windows Vista
Internet Explorer 7.0

Meilleures réponses pour « Tableau d'Objets en JAVA qui ne s'affiche pas » dans :
Linux – Gentoo – Affichage et gestion des Runlevels VoirCette astuce présente une façon pour gérer les scripts d’initialisation et les runlevels sous Gentoo. La distribution Gentoo de Linux se compose de 4 niveaux principaux de runlevels : boot default nonetwork single Pour les manipuler, il est...
Java - Les objets VoirLa création d'objets Un objet est une instance de classe, la création d'objets s'appelle donc l'instanciation. Cette instanciation se fait grâce à l'opérateur new suivi du nom de la classe à instancier et de parenthèses contenant les paramètres...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java - Constructeurs VoirLe constructeur: une méthode particulière Pour instancier une classe, c'est-à-dire créer un objet à partir d'une classe, il s'agit d'utiliser l'opérateur new. En réalité l'opérateur new, lorsqu'il est utilisé, fait appel à une méthode spéciale de...

1

mype, le 29 mar 2009 à 06:06:14
  • +1

Il faudrait que tu utilises la variable de ton objet repertoire

Repertoire Rep=new Repertoire(3); 
rep.R[0]=new Capitale("paris","france"); 
rep.R[1]=new Capitale("rome","italie"); 
rep.R[2]=new Capitale("madrid","espagne");

Répondre à mype

2

 clemence, le 29 mar 2009 à 06:13:02

Merci beaucoup mype, ça fontionne :)

Répondre à clemence