java의 문자열 배열에 문제가 있습니다. 출력 파일에 inverseNewWords LinkedHashMap 값을 출력하려고하는데 배열에 대한 NPE가 계속 표시됩니다. 어떤 이유로 첫 번째 줄이 작동하지 않는 것 같습니다.Java - 배열에 NullPointerException이 있습니까?
System.out.println(inverseNewWords.get(codeIntegers[i]));
좋은 단어 밖으로 인쇄하지만,이 라인 :
System.out.println(newWTF[i]);
다시 null로 제공됩니다. 빠른 답변에 대한
newWTF[i] = inverseNewWords.get(codeIntegers[i]);
System.out.println(inverseNewWords.get(codeIntegers[i]));
System.out.println(newWTF[i]);
decodedWriter.write(newWTF[i]);
** 수정 ** 덕분에, 나는 제 시간에 제출 얻을 밤 내내이 특정 프로그램 작업 있었고, 내 머리의 금이. 문자열 배열은 참으로 잘못 초기화 된,하지만 지금은 내 큰 문제는 그것의 얼굴을 보여주고있다 : println 메소드 문이 제대로 나에게 배열의 각 단어를 보여줍니다
System.out.println(newWTF[i]);
decodedWriter.write(newWTF[i]);
합니다. 그러나 FileWriter는 파일에 동일한 단어를 쓰지 않습니다. 이 광고
System.out.println(newWTF[i]);
은 NPE 던질 수는 newWTF가
1) 배열의 * EACH *를 초기화했는지 확인하십시오. 2) 인덱스가 유효하고 할당 된 배열 요소를 가리키고 가장 중요한 3) * STEP THRO 디버거 * 아래의 코드를 사용하여 실제로 어떤 변수가 "null"인지 볼 수 있습니다! – FoggyDay
'codeIntegers'와'newWTF'의 관계는 무엇입니까? – merlin2011
@ user3160821 : 전체 코드를 첨부하십시오. 도움 없이는 매우 어렵습니다. 그리고 try/catch 절을 사용하십시오. – ron