如何访问NULL值

时间:2012-11-06 10:26:11

标签: java nullreferenceexception

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包含空值,当我尝试访问它时,给出NULlPOinterException有任何方法可以检查NULL值并更改它对任何其他价值。但是,如果我删除整个If..else部分,它不会给出错误并在输出中打印“NULL”...

1 个答案:

答案 0 :(得分:0)

  

如果我删除整个If..else部分,则代码打印null   值。

如果以上情况属实,则表示您的polarvalue[]数组为null并且您尝试使用ith分配polarvalue[i]位置值,这样就会抛出空指针例外。 在分配之前对polarvalue[]数组进行空检查。

您的代码很危险,似乎可以在{/ 1>之类的地方抛出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

进行空检查需要几分钟但减少最宝贵的时间。