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