bonjour à tous,

j'ai créé une classe "Identité2" qui contient deux membres, le nom et le prénom de la personne, initialisée pour le test à : patrick martin.
Le code simple est :
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
package main;
 
import java.io.Serializable;
 
// --------  classe Identité2  -------------------
public class Identité2 implements Serializable{
	private static final long serialVersionUID = 1L;
 
 
		// membres
			public	String nom = " patrick";
			public	String prenom = "martin" ;
 
		// constructeur
				public Identité2() {
				}
 
}
// =======  fin de classe Identité2=============
Quand je créé une identité par défaut, comme ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Identité2 qui = new Identité2();
		System.out.println("mon identité de type Identité2 vaut : " + qui.nom + " et : " + qui.prenom);
je récupère bien mon identité par défaut :
Nom : patrick martin.png
Affichages : 98
Taille : 4,2 Ko

Je sais, je n'ai pas grand mérite.....

Je créé ensuite un tableau, pour stocker mes identités. Je l'implémente au début de ma classe en static :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
		static Identité2[] nomsDesPrésents = new Identité2 [nbParticipants];
Ensuite, plus loin, je désire faire une boucle pour intialiser ce tableau avec les strings "absent" pour le nom et le prénom. (Je sais, j'aurai initialiser dans la classe à la création, le problème serait peut-être évité, mais j'aimerais comprendre ma mauvaise manip...)
Cela ne fonctionne plus !! Même si je prends des caractéristiques du tableau créé, il semble bien exister, mais le compilateur me dit que la référence pointe vers rien!!!
(le tableau listeIn, créé en static également ne pose aucun problème. J'ai affiché ses caractéristiques pour essayer de voir des différences avec celles affichées pour nomsDesPrésents qui semble non accessibles par index...)

Même si j'essaie un accès avec un index du tableau en dur, ca ne veut pas...
Le code est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
		// on initialise les tableaux de stockage
 
		for (int i = 0 ; i<nomsDesPrésents.length; i++) {
 
			System.out.println("voila listeIn au point maudit : " + listeIn);
			System.out.println("voila nomDesPrésents au point maudit : " + nomsDesPrésents + ", de longueur : " + nomsDesPrésents.length);
			System.out.println("i = " + i + "la valeur initiale est : " + nomsDesPrésents[i].nom);
 
 
			nomsDesPrésents[i].nom = "absent";
			nomsDesPrésents[i].prenom = "absent";
			listeIn[i] = null;
			listeOut[i] = null;
		}
La console indique :
Nom : réponse patrick martin.png
Affichages : 91
Taille : 9,1 Ko

Voila mon soucis. Je n'ai pas ce genre de problème d'habitude. Peut-être la fatigue car ça ne parait pas très compliqué.
Si mon erreur saute aux yeux de quelqu'un, ce sera un grand MERCI!....
Bonne soirée.