Tableau et classe en java
Résolu
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();
}
}
}
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
-
ModérateurAu 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(); };-) -
ModérateurSalut,
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. -
Ah d'accord je comprends mieux, merci beaucoup kilian, je bloquait dessus depuis un certain temps.
Encore merci -
desolé