2016-05-19 5 views
-2

配列内の最高値を見つけるために次のコードを書きました。結果はNullPointerExceptionになります。何が問題ですか?あなたの最大のダブルで可能な最小値となるように、学生の配列見つかった最高値のエラー

+0

'cant run it'それはどういう意味ですか?間違いはありますか?それは働いていないのですか?投稿を編集し、正確な質問を追加してください。 – UDKOX

+0

あなたは 'エラーNullpointerexception'が正確ではないと言っています。どのようなデバッグがbtwであるか知っていますか? – UDKOX

+0

@UDKOXいろいろ試してみるとうまくいきません – vincephng

答えて

0

てみmax = Double.MIN_VALUE;max = student[0].getGrade();を変更してみてください。生徒配列にそれより大きい値があれば、それは変更されます。

0

のインデックス0で学生を追加

double max; 
max = student[0].getGrade(); 
for (int m=0; m<student.length;m++) 
{ 
    if (student[m] != null && student[m].getGrade() > max) 
    { 
    max = student[m].getGrade(); 
    } 
} 
0

試してみてください。

double max = Double.MIN_VALUE; 
for (int m = 0; m < student.length; m++) 
{ 
    if (student[m].getGrade() > max) 
    { 
      max = student[m].getGrade(); 
    } 
} 

文は、それはdoubleとして失敗した場合、あなたがstudent[m] != null &&を追加した場合はnullにすることはできません、それはデータを与えられていなかった場合は、二重を呼び出すことはできません。

関連する問題