问个问题啊,知道的人帮回答下String[] books 的值为null
我现在想判断
  当books 为空的时候,进行操作一
     否则进行操作二
我是这么写的
  if(books.equals(null))
  {
     ....;
  }
   else
       ....;
可运行的时候 出现NullPointException异常我把 if 语句改成 if(books[0].length==0)
    一样的问题.有没有老师知道该怎么判断......
教我一下,感激不尽

解决方案 »

  1.   

    if(books.equals(null)) 
      { 
         ....; 
      } 
       else 你这样的判断是毫无意义的,如果books为null的时候,表明这个对象指向了一个空的引用,此时调用其任何的方法都会产生NullPointException这个异常。
    应该这样判断 if books == null ...,通常equals()方法是用来判断对象的值是否相等,而不应该用于判null的操作
      

  2.   

    如果String[] books == null 的话 你掉用他的equals的话会抛出空指针lz可以先判断books是不是为null如:if(books !=null && books.length>0){
        for(String str:books){
          ........
        }
    }
      

  3.   

    null在java中是一个没有实例化的对象,没有实例化的对象在内存中就没有内存分配给他这样指针在找内存中找对象地址的时候就会找不到而抛出空指针异常
      

  4.   

    if(books !=null) { 
        for(String str:books){ 
          if(str != null) {
              ...
          }
        }
    }
      

  5.   


    if(books == null)
    {
      .....
    }else{
      .....
    }我把 if 语句改成 if(我把 if 语句改成 if(books[0].length==0) 
        一样的问题. 
    [0].length==0) 
        一样的问题. 
    //首先你没实例化books数组,所以books是null,所以出现这个异常!
    关于这个异常的说明:当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象的实例方法。 
    访问或修改 null 对象的字段。 
    将 null 作为一个数组,获得其长度。 
    将 null 作为一个数组,访问或修改其时间片。 
    将 null 作为 Throwable 值抛出。 
    应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。 
      

  6.   

     if(books.equals(null)) 
      

  7.   

    null要用==来判断
      if(books==null) 
      { 
         ....; 
      } 
       else 
           ....; 
      

  8.   

    谢谢各位热心的人.
    我把if(books.equals(null)) 改成if(books==null)后问题解决了.谢谢了~~~ 
      

  9.   

    希望有高人顺便帮我解决下下面这个问题,我的netBeans装不了
    http://topic.csdn.net/u/20080426/13/736ddba5-fdc9-46c2-915f-0e3aa748236b.html
      

  10.   

    改成"if(books==null)",或者写成"null.equals(books)"也可以,另外你的NetBeans可以能JRE版本太老,如果在你的机子上安装过JBuilder,Oracle之类的软件的话请修改你的环境变量
      

  11.   

    这位帅哥,不要误导人家哦,null.equals(books) ??? 这样的代码你也能写出来啊?
      

  12.   

    book == null
    如果book是null,你已经调用了book的equal方法,就会null point exception
      

  13.   

    用books == null就可以了。
      

  14.   

    引用楼主 yaha129 的帖子:
    问个问题啊,知道的人帮回答下  String[] books 的值为null  
    我现在想判断  
      当books 为空的时候,进行操作一  
         否则进行操作二  
    我是这么写的  
      if(books.equals(null))  
      {  
         ....;  
      }  
       else  
           ....;  
    可运行的时候 出现NullPointException异常  我把 if 语句改成 if(books[0].length==0)  
        一样的问题.  有没有老师知道该怎么判断......  
    教我一下,感激不尽 
     if(books == null) 

      ..... 
    }else{ 
      ..... 
    } 我把 if 语句改成 if(我把 if 语句改成 if(books[0].length==0)  
        一样的问题.  
    [0].length==0)  
        一样的问题.  
    //首先你没实例化books数组,所以books是null,所以出现这个异常! 
    关于这个异常的说明: 当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括:  调用 null 对象的实例方法。  
    访问或修改 null 对象的字段。  
    将 null 作为一个数组,获得其长度。  
    将 null 作为一个数组,访问或修改其时间片。  
    将 null 作为 Throwable 值抛出。  
    应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。