类型安全:未经检查的从 Object 到 ArrayList<String> 的强制类型转换 警告的解决方法

关于出现类型安全:未经检查的从 Object 到 ArrayList 的强制类型转换 警告的解决方法

出现的问题:

出现警告原因如果所示,由于是未经检查就只直接进行强转导致出现该警告,如果从服务器端传过来其他类型的数据则强转时候就会出错

解决方法:

Object obj = request.getAttribute("timeSpent");
		//检查是不是ArrayList
		if(obj instanceof ArrayList<?>)
		{
			//取出ArrayList
			ArrayList< ? > al = (ArrayList< ? >) obj;
			if (al.size() > 0) {
			    // 一个个转换过来.
			    for (int i = 0; i < al.size(); i++) {
			      // 还得判断是不是String
			      Object o = al.get(i);
			      if(o instanceof String )
			      {
			    	  timeSpent.add((String)o);//timeSpent是前面自己定义的ArrayList
			      }
			    }
		}
		}

结果:

posted @ 2020-05-11 15:34  ZWL.。。。  阅读(1808)  评论(1编辑  收藏  举报