java.util.HashMap cannot be cast to java.util.List

packagecn.itcast.web.tag;importjava.io.IOException;importjava.util.Arrays;importjava.... package cn.itcast.web.tag;
import java.io.IOException;import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public class ForeachTag2 extends SimpleTagSupport {
private Object items;
private String var;
private Collection collection;
public void setItems(Object items) {
this.items = items;
if(items instanceof Collection){//list set
collection=(Collection) items;
}
if(items instanceof Map){
Map map=(Map) items;//set
collection=map.entrySet();
}
if(items instanceof Object[]){
Object obj[]=(Object[]) items;
collection=Arrays.asList(obj);
}
}
public void setVar(String var) {
this.var = var;
}
@Override
public void doTag() throws JspException, IOException {
Iterator it=this.collection.iterator();
while(it.hasNext()){
Object value=it.next();
this.getJspContext().setAttribute(var, value);
this.getJspBody().invoke(null);
}
}
}

<%
Map map=new HashMap();
map.put("aa","11");
map.put("bb","22");
map.put("cc","33");
map.put("dd","44");
request.setAttribute("map",map);
%>
<c:foreach2 var="entry" items="${map}">
${entry.key }=${entry.value }
</c:foreach2>
哪位大侠指点一下,怎么会出现种种异常呢!
展开
 我来答
luoyan35714
2012-11-10 · TA获得超过139个赞
知道答主
回答量:175
采纳率:0%
帮助的人:87.2万
展开全部
hashMap本来没有实现list接口,怎么会能够转换呢,要么用Arraylist,要么你就转换为Map,你要明白Collection这个接口下面的构造,是只有set和list的,Map在单列在外面,好好学吧!你这代码太乱了,没看懂。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
姑苏昊天0bR
2012-11-10 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:70
采纳率:0%
帮助的人:51万
展开全部
这种报错是MAP转LIST强制转换的问题。

具体的,建议你DEBUG一下代码。看看哪块出的问题。
追问
应该是 这里出现了问题,这个是标签的java类里面的转换代码
if(items instanceof Map){
Map map=(Map) items;//set
collection=map.entrySet();
}

我是看视频一步一步来的,视频里面没有出现错误,我的怎么会出现这种转换异常·呢!
追答
标签这块你在实现处设置个断点看看。

视频中也许会有剪辑,还是自己动手调一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式