-1
while(i<word.length)
{
   ans=swn.extract(word[i], pos[i]);
   if(ans== null)
        polarvalue[i]= " ";
   else
        polarvalue[i]=ans;
   i++;
   System.out.println(ans);
}

こんにちは、これは私のコードです。swn.extractsはnullになる可能性のある値を抽出するため、ANSにはnull値が含まれ、アクセスしようとするとNULlPOinterExceptionが発生します。NULL値を確認して任意の値に変更する方法はありますか。他の値。しかし、If..elseセクション全体を削除してもエラーは発生せず、出力に「NULL」が出力されます。

4

1 に答える 1

0

If..elseセクション全体を削除すると、コードはnull値を出力します。

上記が当てはまる場合、polarvalue[]配列が当てはまり、その方法を使用して位置の値nullを割り当てようとしている場合は、nullポインタ例外がスローされます。割り当てる前に配列のヌルチェックを実行します。ithpolarvalue[i]polarvalue[]

あなたのコードは危険です、それはNPEどこにでも投げることができるようです

while(i<word.length)   // do a null check
ans=swn.extract(word[i], pos[i]);  // do a null check
polarvalue[i]= " ";  // do a null check
polarvalue[i]=ans;  // do a null check

ヌルチェックを実行すると数分かかりますが、最も貴重な時間を短縮できます。

于 2012-11-06T10:58:49.870 に答える