2014-04-19 6 views
-1

Je m'embête avec un tableau de chaînes en java. J'essaie de générer une valeur LinkedNewWords LinkedHashMap dans un fichier de sortie, mais je continue d'obtenir un NPE pour le tableau. Pour une raison quelconque, la première ligne ne semble pas fonctionner.Java - NullPointerException dans le tableau?

System.out.println(inverseNewWords.get(codeIntegers[i])); 

imprime le mot bien, mais cette ligne:

System.out.println(newWTF[i]); 

revient comme nul.

newWTF[i] = inverseNewWords.get(codeIntegers[i]); 
System.out.println(inverseNewWords.get(codeIntegers[i])); 
System.out.println(newWTF[i]); 
decodedWriter.write(newWTF[i]); 

** EDIT ** Merci pour les réponses rapides, je travaille sur ce programme spécifique tout au long de la nuit pour obtenir soumis à temps et fissurés ma tête. Le tableau de chaînes a en effet été initialisé correctement, mais maintenant mon principal problème montre est visage:

System.out.println(newWTF[i]); 
decodedWriter.write(newWTF[i]); 

l'instruction println me montre correctement chaque mot dans le tableau. Cependant, FileWriter n'écrit pas les mêmes mots dans le fichier. (Le FileWriter est vidé et fermé avant que le programme se termine) Toute aide est grandement appréciée

+0

1) Assurez-vous * initialisé CHAQUE * de vos tableaux, 2) Assurez-vous que les points l'index pour un élément de tableau valide, alloué et, le plus important, 3) * STEP THRO UGH LE CODE SOUS LE DEBUGGER * donc vous pouvez réellement * VOIR * quelle variable est "nulle"! – FoggyDay

+0

Quelle est la relation entre 'codeIntegers' et' newWTF'? – merlin2011

+0

@ user3160821: S'il vous plaît joindre le code complet, il est très difficile de vous aider sans! Et utilisez une clause try/catch. – ron

Répondre

2

La seule raison pour laquelle cette ligne

System.out.println(newWTF[i]); 

peut jeter NPE est que newWTF est nul

0

peut aider :

newWTF = new String[inverseNewWords.size()];