关于出现类型安全:未经检查的从 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
}
}
}
}