转自:http://blog.sina.com.cn/s/blog_5bd6b451010130if.html

struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等以下几个简单的demo:
s:iterator 标签有3个属性:
    value:被迭代的集合
    id   :指定集合里面的元素的id
    status 迭代元素的索引

1:jsp页面定义元素写法 数组或list

<s:iterator value="{'1','2','3','4','5'}" id='number'>
    <s:property value='number'/>A
</s:iterator>
打印结果为: 1A2A3A4A5A

2:索引的用法
如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法

<s:iterator 中的status 使用方法

1:#status.odd 当前元素索引是否奇数行

2:#status.even 当前元素索引是否偶数

3:#status.count 当前迭代了几个元素
4:#status.index 当前元素索引,从0开始『#status.count=#status.index+1』

5:#status.first 当前是否第一个元素
6:#status.last 当前是否最后一个元素
7:#status.modules(int) 当前行数取模

<s:iterator value="{'a','b','c'}" id='char' status='st'>
    <s:if test="#st.Even">
        现在的索引是奇数为:<s:property value='#st.index'/>
    </s:if>
    当前元素值:<s:property value='char'/>
</s:iterator>
3:遍历map
value可以直接定义为:

value="#{"1":"a","2":"b"}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下:

<s:iterator value="map" id="id" status="st">
     key : <s:property value='key'/>
     value:<s:property vlaue='value'/>
</s:iterator>
当然key 和value 都可以使java 的 Object

3:遍历数据栈.简单的List类,
List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}

<s:iterator value="label" id="id">
    <s:property value="#id.attrName" />
</s:iterator>
当然value 还可以写成 value="%{label}" label可以有.操作
label的属性List 可以写成value="%{label.list}" 相当于:getLabel().getList();

4:遍历2个list;
List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}
这2个list的元素是一一对应的,一个attrN对应一个attrV

<s:iterator value="%{attrN }" id="id"   status="status">
index    is : <s:property value='status.index'/>
attrName is : <s:property value='id'/> or <s:property value='%{id}'/>
attrName is : <s:property value='%{attrV[#status.index]}'/>
</s:iterator>

s:iterator的用法相关推荐

  1. boost::iterator::permutation_iterator用法的测试程序

    boost::iterator::permutation_iterator用法的测试程序 实现功能 C++实现代码 实现功能 boost::iterator::permutation_iterator ...

  2. boost::iterator的用法测试实例

    boost::core模块boost::iterator的用法测试实例 实现功能 C++实现代码 实现功能 boost::core模块boost::iterator的用法测试实例 C++实现代码 #i ...

  3. STL迭代器(iterator)用法详解

    C++ STL迭代器(iterator)用法详解 无论是序列容器还是关联容器,最常做的操作无疑是遍历容器中存储的元素,而实现此操作,多数情况会选用"迭代器(iterator)"来实 ...

  4. 迭代器Iterator的用法

    迭代器Iterator的用法 和枚举一样,表示一些对象的集合,主要用于对数组进行遍历,定义如下: package java.util; public interface Iterator { bool ...

  5. C++迭代器(iterator)用法

    C++迭代器(iterator)用法 1.简述 迭代器是一种检查容器内元素并遍历元素的数据类型 2.vector示例 //将vector的元素值全部修改为2 vector<int> v(1 ...

  6. Iterator 的用法

    今天在看别人程序时看到 Iterator 在程序中用法,感觉自己对这个Iterator 好像不知道似的,确实也不太清楚,平时写程序也没有用过,到网上查了下它的用法,感觉也不是很很难,做过笔记.以前可以 ...

  7. iterator的用法 | reverse_iterator的封装实现

    进阶C++__STL__容器list使用方法[简单易懂]https://blog.csdn.net/qq_61386381/article/details/125922910 进阶C++__STL__ ...

  8. mysql迭代器_迭代器是什么,C++ STL迭代器(iterator)用法详解

    无论是序列容器还是关联容器,最常做的操作无疑是遍历容器中存储的元素,而实现此操作,多数情况会选用"迭代器(iterator)"来实现.那么,迭代器到底是什么呢? 我们知道,尽管不同 ...

  9. java it_Java中的Iterator的用法

    Iterator(迭代器) 迭代器是一种设计模式,它是一个对象,可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构.迭代器通常器被称为"轻量级"对象,因为创建它的代价 ...

最新文章

  1. Druid数据库连接池超时问题com.alibaba.druid.pool.GetConnectionTimeoutException: wait millis 1000, active 10
  2. python selenium --调用js
  3. 【转】JS windows.open()详解
  4. codechef LEMOVIE dp
  5. 30条值得程序员借鉴的好习惯
  6. ubuntu 14.04 开机进入字符界面
  7. python怎么处理数据标注_在python中将数据标记为敏感
  8. 人工智能语言python实验报告_【报名】人工智能语言Python启蒙课程(五六年级)...
  9. git:Failed to connect to github.com port 443:.....
  10. WebSocket+HTML5实现在线聊天室
  11. 前端-----今日份小练习
  12. Eclipse中,使用Darkest主题,static方法在main中不是斜体的解决办法
  13. win10+黑苹果双系统教程教程
  14. (二)动态白盒测试(含逻辑覆盖例子)
  15. 浏览器网页无法打开麦克风、摄像头
  16. PyQt5-在窗口上绘制文本 QPainter
  17. Java正则表达式的使用
  18. Leetcode刷题笔记——剑指offer II (六)【图】
  19. 微信开发者工具:代码更新后页面未刷新
  20. 华为p10 android几,是运行速度最快的安卓手机? 华为P10

热门文章

  1. 大学计算机科学的内容,本科读宾夕法尼亚大学计算机科学专业学什么内容?
  2. php导入Excel表格接口
  3. LeetCode——1947. 最大兼容性评分和(Maximum Compatibility Score Sum)[中等]——分析及代码(Java)
  4. c语言最大值函数调用
  5. 是计算机主机与显示器之间的接口,显示器连接电脑的线是什么线_连接电脑显示器和主机的线是什么线-win7之家...
  6. 子串查询(子序列查询)
  7. 各大企业连连出现亏损,环保行业何去何从?
  8. ucore进程上下文切换关键代码分析
  9. java--随机验证码的生成(4个随机英文与1个数字)
  10. 网络平台常用实名认证接口介绍