请帮助我理解,以下代码显示类型不匹配:for语句中的“无法从元素类型对象转换为列表”。我知道我想念一些愚蠢的东西。请帮忙。
public void setMapPriceValue(SolrItemVO solrItemVO, ArrayList proce1) throws SolrDAOException
{
List xcatentAttrList = (List<Xcatentattr>) proce1.get(0);
solrItemVO.setMapPrice(-1); // setting default value
for(List xcatentattr : xcatentAttrList){
if(xcatentattr.get(0) == 33)
solrItemVO.setMapPrice(xcatentattr.get(1));
solrItemVO.setMapPriceVal(xcatentattr.get(2));
}
}
最佳答案
如果您要输入内容,请尝试保持输入状态
List<Xcatentattr> xcatentAttrList = (List<Xcatentattr>) proce1.get(0);
solrItemVO.setMapPrice(-1); // setting default value
for(Xcatentattr xcatentattr : xcatentAttrList){
if(xcatentattr.get(0) == 33)
solrItemVO.setMapPrice(xcatentattr.get(1));
solrItemVO.setMapPriceVal(xcatentattr.get(2));
}
}
那么答案可能会更清楚;)
for循环的类型为Xatentattr。您正在遍历该类型的列表。
查看此link以获得有关for-each循环的更多信息