Tableau et classe en java

Résolu
devDeb -  
 ba Issa -
Bonjour,
Je suis débutant en java et je voudrais créer un tableau de structure. Je souhaite d'abord saisir toutes les infos sur une personne, mais j'ai cette erreur: java.lang.NullPointerException
Je ne comprends pas d'où vient le problème.

package exercicetableau;
import java.util.*;
public class Main {

public static class TPersonne{
String nom;
int age;
String ville;

}
public static void main(String[] args) {
Scanner clavier=new Scanner(System.in);
TPersonne unePersonne=new TPersonne();
TPersonne lesPersonnes[]=new TPersonne[10];
for(int i=0;i<9;i++){
lesPersonnes[i]=null;
}

for(int i=0;i<3;i++){
lesPersonnes[i].nom=clavier.next();
lesPersonnes[i].ville=clavier.next();
lesPersonnes[i].age=clavier.nextInt();
}
}

}
Configuration: Windows Vista
Opera

4 réponses

  1. kilian Messages postés 8675 Date d'inscription   Statut Modérateur Dernière intervention   1 526
     
    Au lieu de faire ça:
    for(int i=0;i<9;i++){
        lesPersonnes[i]=null;
    } 

    il suffit de faire ça:
    for(int i=0;i<9;i++){
        lesPersonnes[i]= new TPersonne();
    } 
    ;-)
    1
  2. kilian Messages postés 8675 Date d'inscription   Statut Modérateur Dernière intervention   1 526
     
    Salut,

    Il faut que tu instancie un TPersonne dans chacune des cases de ton tableau de TPersonne. Tu n'as fait qu'allouer
    un tableau, pas les objets qui sont dedans.
    0
    1. devDeb
       
      Merci de ta rapidité. Je ne suis pas sur de comprendre, comment faire pour instancier toute les cases?
      0
  3. devDeb
     
    Ah d'accord je comprends mieux, merci beaucoup kilian, je bloquait dessus depuis un certain temps.
    Encore merci
    0