MessageBean messagebean=new MessageBean();
 ArrayList arraylist=new ArrayList();
  arraylist=(ArrayList) session.getAttribute("SessionArraylist")
  if(arraylist==null||arraylist.size()==0){
    arraylist=new ArrayList();
  }
  arraylist.add(messagebean);
  session.setAttribute("SessionArraylist", arraylist);如果不加if这个判断语句,arraylist.add(messagebean)这句就会出现Exception,但是我在第一句的时候已经对有了实例化了,不太明白为什么还要必须写arraylist=new ArrayList()。
请大家帮我解释下,谢谢!

解决方案 »

  1.   

    因为重新赋值了,有可能是赋值为null。
      

  2.   

    arraylist=(ArrayList) session.getAttribute("SessionArraylist")
    在这句中arraylist可能取不到session中的值,所以报空指针异常了。
      

  3.   

    MessageBean messagebean=new MessageBean();
     ArrayList arraylist=(ArrayList) session.getAttribute("SessionArraylist")
      if(arraylist==null||arraylist.size()==0){
      arraylist=new ArrayList();
      }
      arraylist.add(messagebean);
      session.setAttribute("SessionArraylist", arraylist);
      

  4.   

    我感觉是有获取失败的原因,
    可能你的SessionArraylist本身不存在
    if(arraylist==null||arraylist.size()==0){
    arraylist=new ArrayList();
    }
    如果if的条件成立,那么说明SessionArraylist不存在,如果不创建arraylist.add(messagebean);怎么运行