高手给详解一下!

解决方案 »

  1.   

    null表示不存在对对象的引用,而""表示空字符串,存在引用,也就是说存在指向""的“ 
    指针”。 
      

  2.   

    打个比方,一个网页向另一个网页提交表单,如果跟本不存在某一个项(接受aa,但表单里根本没有aa),则会取得null,
    <form action="page2.jsp">
    <input type = "submit" />
    </form>但如果有aa这个项,只是不往里面写任何东西,就直接提交,就会接受到""
    <form action="page2.jsp">
    <input type ="text" name="aa"/>
    <input type = "submit" />
    </form>
    ---------------------------------------------
    <% 
         String s = request.getParameter("aa");
          if ( s == null)
           {
    %>
     s is null
     <% } 
          else{
           if( s.equals("")){
           %>
           s is "" 
          
    <% } } %>
      

  3.   

    JAVA不要用指针来比喻好不,NULL就是没有对象内存地址的引用,空字符串说明存在对象,但是对象是空的,打个比喻:你拿地址去找人,NULL就是根本没的这个地址,人就更不用说了;空字符串说明有这个地址,但是没的人的.
      

  4.   

    null表示不存在,引用的时候会出现异常
      

  5.   

    ""是空字符串,是存在的。
    null是不存在的。
      

  6.   

    正如gaoqing888() 所说,NULL就是没有对象内存地址的引用,空字符串说明存在对象,但是对象是空的
      

  7.   

    null表示不存在,引用的时候会出现异常
    ""是空字符串,是存在的。
      

  8.   

    一个是空地址,一个是内容为空的对象,他们要和其他String比较的方法不同,null用==来比较,""用equals比较,如果一个String对象和""用==来比较,那永远是false,因为他们的地址是不同.
      

  9.   

    null不分配内存
    ""已经分配了内存