[Débutant] Erreur : java.lang.NullPointerException

Erreur : java.lang.NullPointerException [Débutant] - Java - Programmation

Marsh Posté le 26-02-2010 à 23:11:09    

Mon code ci-dessous me donne une erreur de type: java.lang.NullPointerException; Je ne comprends pas du tout pq ? qqn peut m'aider....
 

Code :
  1. String O = "";
  2. String P = "";
  3. String x = "";
  4. String[][][] tab = new String[1][2][150];
  5. for(int i = 0; i < 150; i++) { // Lignes
  6.                 for(int j = 0; j < 150; j++) { // Colonnes
  7.                     O =tab[0][0][i];
  8.                     P = tab[0][1][j];
  9.                     for(int k = 0; k < 256; k++) {
  10.                         if(O.charAt(k) == P.charAt(k)) {
  11.                             x += k+",";
  12.                         }
  13.                     }
  14.                 }
  15.             }


 
Merci d'avance

Reply

Marsh Posté le 26-02-2010 à 23:11:09   

Reply

Marsh Posté le 26-02-2010 à 23:46:49    

Code :
  1. String[][][] tab = new String[1][2][150];


 
dans ce tableau toutes les String sont = null
 
 

Code :
  1. O =tab[0][0][i];


 
Après cette instruction O = null
 
 
Donc quand tu fais O.charAt(k) tu as une NullPointerException
 
PS : En java c'est une convention de ne pas commencer le nom des variables avec une majuscule.

Reply

Marsh Posté le 26-02-2010 à 23:49:39    

J'oublié de dire que je remplie le tableau complètement après l'avoir défini !. J'ai vérifié en omettant le code qui génère l'erreur et il est bien remplie ... c'est ça que je ne comprends pas

Reply

Marsh Posté le 26-02-2010 à 23:56:03    

Qu'est ce qui s'affiche quand tu exécutes ce code  
 
 

Code :
  1. for(int i = 0; i < 150; i++) { // Lignes
  2.   for(int j = 0; j < 150; j++) { // Colonnes
  3.    O =tab[0][0][i];
  4.    P = tab[0][1][j];
  5.    for(int k = 0; k < 256; k++) {
  6.     System.out.println(O);
  7.     System.out.println(P);
  8.     if(O.charAt(k) == P.charAt(k)) {
  9.      x += k+",";
  10.                     }
  11.                 }
  12.             }
  13.         }


 

Reply

Marsh Posté le 27-02-2010 à 00:06:20    

ca maffiche java.lang.NullPointerException; (en partant du fait que le tableau est rempli. En fait, il bloque au moment ou il compare les 2 string dans le if mais je ne sais pas pourquoi

Reply

Marsh Posté le 27-02-2010 à 00:12:18    

null-puis chaine de caractères- donc mon tab[0][0][0] n'est pas défini c'est bizarre...

Reply

Marsh Posté le 27-02-2010 à 00:13:44    

C'est bon, j'ai trouvé l'erreur, ouf^^

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed