当数组返回null时,避免空指针/ un可解析异常的最佳做法是什么

时间:2015-03-21 04:21:43

标签: arrays nullpointerexception try-catch numberformatexception

我们说我们有

for(Object[] ob:bfTotObj)
{
  double sal1= Double.parseDouble(String.valueOf(ob[0]));
  double sal2= Double.parseDouble(String.valueOf(ob[1]));
  double sal2= Double.parseDouble(String.valueOf(ob[2]));
}

如果数组返回null,那么这通常会导致空指针异常或数字解析异常。

一种方法是围绕Try,catch中的每一件事。

其他方式是放

 for(Object[] ob:bfTotObj)
  {
    if(ob[0]!=null)      
      double sal1= Double.parseDouble(String.valueOf(ob[0]));
    if(ob[1]!=null)
      double sal2= Double.parseDouble(String.valueOf(ob[1]));
    if(ob[0]!=null)
      double sal2= Double.parseDouble(String.valueOf(ob[2]));
}                   

所有值。

有更好的方法吗?或者最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

要特定于您的情况,这可能是更好的代码

for(Object[] ob:bfTotObj)
 {
    double[] sal = new double[ob.length];
    for(int i=0; i < ob.length; i++ )
    { 
       if(ob[i]!=null)      
          double sal[i]= Double.parseDouble(String.valueOf(ob[i]));
    }
}   //make sure you put array sal in right place

但是有几种方法可以处理空指针。基本思路是避免NullPointerException,同时保持代码清除。请参考this网站以获得更好的理解。