if(ss)就行了啊。而且是false,当然不执行if里面的

解决方案 »

  1.   


    没有也是null吧,为什么是空指针,map可是new 出来的
      

  2.   


    没有也是null吧,为什么是空指针,map可是new 出来的
    map=(HashMap<String,String>)request.getAttribute("sessMap");
    这不又重新赋值了吗
      

  3.   


    没有也是null吧,为什么是空指针,map可是new 出来的
    map=(HashMap<String,String>)request.getAttribute("sessMap");
    这不又重新赋值了吗
    。是的,但是request.getAttribute("sessMap")!=null 是false,说明这段不执行啊,为什么会执行呢
      

  4.   

    if(<%=request.getAttribute("sessMap")!=null%>)解析出来应该是if(false!=null)吧,而 false!=null为true
      

  5.   


    不是啊,我把var ss=<%=request.getAttribute("sessMap")!=null%>; alert出来是false,整体是false
      

  6.   


    不是啊,我把var ss=<%=request.getAttribute("sessMap")!=null%>; alert出来是false,整体是false不好意思看错了,应该不会出现楼主说的情况,楼主在仔细检查下
      

  7.   

    原来我这么菜....忘了<%%>这种java片段是编译时运行,也就是不管if(true)  还是if(false),java遇到<%%>就要编译
      

  8.   


    这个不是重点,既然ss为false,正好说明了request.getAttribute("sessMap")为null,楼主没理清楚逻辑。
      

  9.   

    这个不是重点,既然ss为false,正好说明了request.getAttribute("sessMap")为null,楼主没理清楚逻辑。
    是null啊,但是我想的是它是null,那么 if就是false,下面不执行就是,但还是执行了map.get(“id”)
      

  10.   

    这个不是重点,既然ss为false,正好说明了request.getAttribute("sessMap")为null,楼主没理清楚逻辑。
    是null啊,但是我想的是它是null,那么 if就是false,下面不执行就是,但还是执行了map.get(“id”)
    哦,原来如此
      

  11.   


    楼主不对哦,服务器端对这段代码编译的时候if(false)就会跳过if内的代码返回给页面的是if(false){}如果按照楼主的理解if里面都会执行,楼主你自己在想想吧,我试了,我这里不会出现你说的奇葩问题- - 
      

  12.   


    楼主不对哦,服务器端对这段代码编译的时候if(false)就会跳过if内的代码返回给页面的是if(false){}如果按照楼主的理解if里面都会执行,楼主你自己在想想吧,我试了,我这里不会出现你说的奇葩问题- - 
    if(false){}如果代码块里面是 java 片段,就会执行,你再试试
      

  13.   


    楼主不对哦,服务器端对这段代码编译的时候if(false)就会跳过if内的代码返回给页面的是if(false){}如果按照楼主的理解if里面都会执行,楼主你自己在想想吧,我试了,我这里不会出现你说的奇葩问题- - 

    if(false){}如果代码块里面是 java 片段,就会执行,你再试试楼主你说的是对的- -