Constructeur Tableau - Merci pour votre aide ! :-)
JFC31
Posté le 23-08-2009 à 06:07:44
Bonjour à tous, Je n'arrive pas à corriger l'erreur suivante :
Exception in thread "main" java.lang.NullPointerException
at Tableau.setElementI(Tableau.java:26)
at Test.main(Test.java:13)
Java Result: 1
Voici mes 2 classes :
public class Tableau {
int [] tableau;
private int i;
public Tableau(){
}
public int[] getTableau() {
return tableau;
}
public void setTableau(int[] tableau) {
this.tableau = tableau;
}
public int getElementI(int i){
for (i = 0; i < tableau.length; i++){
}
return i;
}
public void setElementI(int v){
this.tableau[i] = v;
}
}
*********************************************************
import java.util.Scanner;
/**
*
* @author Jessica
*/
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Tableau tableau = new Tableau();
//int [] tableauEntiers = new int [4];
System.out.println("Veuillez saisir 4 entiers pour ce tableau :" );
int entier1 = sc.nextInt();
tableau.setElementI(entier1);
int entier2 = sc.nextInt();
int entier3 = sc.nextInt();
int entier4 = sc.nextInt();
System.out.println("Voici le tableau créé : " );
System.out.println("Quel entier compris dans le tableau souhaitez-vous afficher ?" );
int entierAffiche = sc.nextInt();
tableau.getElementI(entierAffiche);
System.out.println(entierAffiche);
}
}
Merci beaucoup pour votre aide.
Publicité
Posté le 23-08-2009 à 06:07:44
esox_ch
Posté le 23-08-2009 à 09:11:30
Demande toi combien vaut le "int i" quand appelles tableau.setElementI(entier1);
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Deamon
Posté le 23-08-2009 à 11:06:28
Mets ton code entre les balises [ code=java] [ /code] (sans espaces) car c'est illisible.
Code :
publicint getElementI(int i){
for(i = 0; i < tableau.length; i++){
}
return i;
}
Ca sert à quoi ça ?
Message édité par Deamon le 23-08-2009 à 11:06:42
esox_ch
Posté le 23-08-2009 à 11:57:41
mdr je l'avais pas lue cette méthode
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
JFC31
Posté le 23-08-2009 à 19:49:55
Merci pour les conseils, j'ai trouvé mon erreur.
esox_ch, pas très cool ton commentaire : "mdr je l'avais pas lue cette méthode", je débute, je fais des erreurs, c'est pas la peine de m'enfoncer ...
esox_ch
Posté le 23-08-2009 à 19:56:23
Salut,
Désolé si mon commentaire t'a offensé, c'était absolument pas le but. C'est juste le commentaire de Deamon qui m'a fait rire. encore désolé
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
JFC31
Posté le 23-08-2009 à 20:24:56
Ca me touche que tu le prennes comme ça, je viens pas souvent sur les forums et en général il y a beaucoup de gens qui se moquent alors ça me met un peu les boules. Peut etre que c'était gros ce que j'avais marqué aussi. En tout cas, tu as marqué :
"Demande toi combien vaut le "int i" quand appelles tableau.setElementI(entier1);"
et donc j'ai initialisé la variable private int i à zéro et du coup ça marche. C'était bien cela qu'il fallait faire ?
Si c'était juste, merci de m'avoir mis la puce à l'oreille sans me donner directement la réponse :-)
Deamon
Posté le 23-08-2009 à 21:18:27
Bien. Par contre t'as corrigé la méthode que j'ai citée ?
JFC31
Posté le 29-08-2009 à 17:14:31
Oui tout est corrigé et tout fonctionne. merci Deamon :-)