如何获取最后一个元素迭代器struts2
我正在寻找使用struts 2只显示迭代器最后一个元素的想法 我有以下代码:如何获取最后一个元素迭代器struts2,struts2,iterator,Struts2,Iterator,我正在寻找使用struts 2只显示迭代器最后一个元素的想法 我有以下代码: <s:iterator value="listuser" status="userStatus"> <tr class="<s:if test="#userStatus.odd == true ">odd</s:if><s:else>even</s:else>"> <td><s:property value="nameuser"
<s:iterator value="listuser" status="userStatus">
<tr class="<s:if test="#userStatus.odd == true ">odd</s:if><s:else>even</s:else>">
<td><s:property value="nameuser" /></td>
// and others
</s:iterator>
//及其他
像这样的东西可以达到以下目的:
<s:if test="#userStatus.index==listuser.size()-1">
//Show the last element here
</s:if>
//在这里显示最后一个元素
[更新]
根据四元数的评论,以下是如何将其放在一行中:
<s:set name="lastUser" value="listuser[listuser.size()-1]"/>
上面我们在lastUser中设置了最后一个元素,下面介绍了如何在同一页面中的其他位置使用它
<s:property value="#lastUser.name"/>
不仅提供奇数和偶数方法,还提供最后和第一个方法
<s:iterator value="listuser" status="userStatus">
<s:if test="#userStatus.last == true ">
<td><s:property value="nameuser" /></td>
</s:if>
</s:iterator>
为什么?在Java代码中完成这项工作。我有一个示例,显示value=“listuser”
中存在的所有项,我只想显示这个列表的最后一个元素,我说的是“不要在视图层中执行”。您可以通过OGNL访问它,例如,listuser.{$#this instanceof User}
但我认为这是一个可怕的想法有几个原因。对不起,我不明白我应该怎么做?如果在OGNL中不存在,我可以在VEIY中逐个获取最后一个元素吗?您应该在操作中获取最后一个元素,而不是在视图层中。或者,正如我所说,以我所展示的方式滥用OGNL。虽然您发布的代码暗示您并不真正想要迭代器中的最后一项。这太可怕了,您只是循环了一个元素的所有值?要一次获得最后一个元素(应该使用OGNL),这对我来说有点像UNTESTEDNo问题,因为我现在在其他位置使用了一些列表。好的,非常感谢