您的位置:首页 > 编程语言 > Java开发

struts2的<s:iterator>标签 遇到的问题:java.lang.ClassCastException:cannot be cast to java.lang.String

2014-01-16 19:30 1001 查看
转载自:http://blog.csdn.net/chch010520/article/details/7423143

[java] view
plaincopyprint?

<s:iterator value="{'a','b'}" var="number"> <tr>

[java] view
plaincopyprint?

<s:property value="number"/><br/>

/s:iterator>

这段代码运行会报错:java.lang.ClassCastException: java.lang.Character cannot be cast to java.lang.String

好像自动会把'a'当作是字符而不是字符串

如果我改成以下几种形式之一就正常了:

使用时前+“#”号

Java代码

// 方法一:使用时前+“#”号

[java] view
plaincopyprint?

<s:iterator value="{'a','b'}" var="number"> <tr>

<s:property value="#number"/><br/>

</s:iterator>

不使用value属性指明

Java代码

// 方法二:不使用value属性指明

[java] view
plaincopyprint?

<s:iterator value="{'a','b'}" var="number"> <tr>

<s:property><br/>

</s:iterator>

[java] view
plaincopyprint?



单引、双引号反用,让其理解a是一个字符串 Java代码 // 方法三:单引、双引号反用

[java] view
plaincopyprint?

<s:iterator value='{"a","b"}' var="number"> <tr>

<s:property value="number"/><br/>

</s:iterator>

[java] view
plaincopyprint?



虽然说可以通过上面三个方式解决,但是我还是很纳闷,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: