2012-04-12 23 views
0

私はjavaを使用しています。このコードの2行目では、NULLポインタ例外が発生しています。ここでnullポインタ例外が発生しますか?

double gpa = 0.0; 
gpa = grads[index].calculateGPA(); 
return gpa; 

gradsはGraduateオブジェクトの配列です。私はJUnitTestでこのメソッドをテストし、正常に動作します。私はcalculateGPA()もテストしました。プログラムを実行するときにのみ、エラーが発生します。

+0

'grads'配列はどのように初期化されていますか? – Bernard

+0

例外を取得したとき、または単にデバッガで実行しようとしたときに、 'index'と' grads [index] 'の値をチェックしましたか? – Karlson

+0

このような例外が発生した場合は、まず、System.out.println( "grads is null:"(grads == null)+ "grads [index] index] == null)); '例外がスローされる前の行。 – Alderath

答えて

6

エラーは以下の可能性のいずれかが原因で発生することができます

  1. gradsnullです。
  2. indexは、nullです。
  3. grads[index]は、nullです。
  4. calculateGPA()は、NULLポインタ例外を発生させています。

デバッガを使用して、可能性のあるものを見つけてそこから取得します。

+2

または 'grads'配列全体が' null'(初期化されていません)です。 – Bernard

+1

'index'は' Integer'であり、nullです。 –

+0

OK、私たちは現在最大4人の候補者です。 4上の任意の進歩! ;-) –

関連する問題