我做了两个JSP页面,其中一个要判断另一个页面中application中有没有值,就是application.getAttribute("KEY")有没有值,然后做一些处理,我是这样判断的:if(application.getAttribute("KEY")!=null){//TODO;}但想想不对,万一application不等于null但有没有值怎么办,用转成数组后用size()方法判断有怕是空转换时发生异常,怎么办?

解决方案 »

  1.   

    那就要看下key value的那个value是什么类型了
    还有你在前一个页面应该可以控制那个value吧,只要不往里面set空值就行了
      

  2.   

    这么判断也可以。你需要再做下处理。首先最上面先初始化一个对象接受这个KEY。比如String[] keys = new String[10];//先初始化长度为10.如果你事先知道你存入的数组长度是多少。
    if(application.getAttribute("KEY")!=null){
        keys = (String[]) application.getAttribute("KEY");
        if(keys.length!=0 && keys != null)
           //TODO;
        else
           //TODO;
    }基本上这么判断就可以了。只要考虑多些就可以了。
      

  3.   

    如果不等于null的时候再判断长度啊。进行两层的判断
      

  4.   

    恩,我用的就是lijian8552同志的方法,就这样吧!也谢谢jushi1988的答案,你的也不错。