<c:forEach>标签共有六个属性:
属性名
|
是否支持EL
|
属性类型
|
用处
|
Vvar
|
false
|
String
|
是否处理标签体内容
|
items
|
true
|
数组,字符串,各种集合类型
|
迭代的集合对象
|
vaeStatus
|
false
|
String
|
迭代的状态,获得迭代自身的消息
|
begin
|
true
|
int
|
开始位置,默认第一个
|
end
|
true
|
int
|
结束的位置,默认最后
|
step
|
true
|
int
|
迭代步长
|
关于var的属性:
1、 没有items属性;
<c:forEach var=”item” begin=”1” end=”3”>
<c:out value=”${item}”/>
</c:forEach>
输出的结果为:1 2 3
2、 Items的值是:数组
<% Integer[] arr={1,2,3};
request.setAttribute("arr",arr); %>
<c:forEach items="${arr}" var="arr" >
<c:out value=”${arr}”/>
</c:forEach>
输出的结果为:1 2 3
3、 Items的值是:字符串
1)简单的字符串
<c:forEach items=”items” var=”item”>
<c:out value=”${item}”/>
</c:forEach>
输出的结果:items
2)以”,”间隔的字符串,例:song,li,xing
<c:forEach items=”song,li,xing” var=”item”>
<c:out value=”${item}”/>
</c:forEach>
输出的结果:song li xing
4、 Items的值是:集合
<%
List list=new
ArrayList();
list.add("song");
list.add("lixing");
request.setAttribute("list",list);
%>
<c:forEach items="${list}" var="str">
<c:out value=”${str}”/>
</c:forEach>
输出结果为:song lixing
总结:迭代输出var储存的值时,应先考虑是否有items属性;没有items属性时,迭代输出的结果为数字(1,2..end);有items属性时,要看类型;1、数组、集合、以”,”间隔的字符串时,迭代输出数组、集合(或以“,“分开的字符串)的元素;2为简单的字符串时,一个元素输出;
分享到:
相关推荐
本文实例分析了js的for in循环和java里foreach循环的区别。分享给大家供大家参考。具体分析如下: js里的for in循环定义如下: 代码如下:for(var variable in obj) { … } obj可以是一个普通的js对象或者一个数组。...
(userList是集合在dataMap中的key, user是集合中的每个元素, 类似<c:forEach items='userList' var='user'>), 如图: PLUS:若表格之外还有嵌套的循环,也需要用<#list table as map></#list>,注意这里的<#list>...
foreach (var item in list) { //循环 要修改的属性 名称, 并 反射取出 t 中的 属性对象 for (int index = 0; index ;index++ ) { //获取要修改的属性名 string pName = propertyNames[index]; //获取属性...
for-of工作原理:迭代器有一个next方法,for循环会不断调用这个iterator.next方法来获取下一个值,直到返回值中的 done属性为true的时候结束循环。 ① 在ES6之前 var arr = [1,2,3,4,5,6]; arr.name = 'a'; for (var...
接着昨天的,如果<forEach>中的items类型是map或者Collection类型的,怎样使用增强for循环; 首先还是创建一个标签处理器类,定义两个属性,String var; Object items; 因为items要迭代各种集合,所以要使用Object;...
众所周知,常用的循环语句有for、while、do-while以及for-in,forEach。除了for-in和forEach性能略低外,平时我们对前三者的选择更多的是基于需求而非性能考虑,今天我们就对它们各自的性能做个测试,告诉我们最极端...
当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 []。 例如: ${user.My-Name}应当改为${user["My-Name"] } 如果要动态取值时,就可以用[]来做,而.无法做到动态取值。例如...
现在有一个数据,需要你渲染出对应的列表出来: var data = [ {"id":1}, {"id":2}, {"id":3}, {"id":4}, ];...我一个循环再一个循环,轻松带走你们 var data2 = [ {"id":1,children:[{"id":
《C#全能速查宝典》共分为8章,分别介绍了C#语言基础、Windows窗体及常用控件、Windows高级控件、控件公共属性、方法及事件、数据库开发、文件、数据流与注册表、GDI+绘图技术和C#高级编程,共包含562个C#编程中常用...
这篇文章来回答javascript通用循环遍历方法forEach中最后提到的关于伪数组的问题。 什么是伪数组 能通过Array.prototype.slice转换为真正的数组的带有length属性的对象。 这种对象有很多,比较特别的是arguments对象...
API:应用编程接口,是一个新的(API)应用编程接口 本质上它是命名空间和类的...四个属性和一个静态方法,该方法把五本书列表返回给任何需要该数据的页面,这里有一个C#3.0语言中的一个特性一一对象新转化器(object)
// 在不用在意资源释放的情况下使用DataReader,利用了foreach的机制,在循环结束后DataReader会自动关闭 IEnumerable<IDataRecord> rows = Db.Northwind.Rows( "SELECT ProductName, SupplierID FROM Products ...
* --interval|INTERVAL:在队列中循环的间隔时间,即完成一个任务后的等待时间,默认是5秒 * --app|APP_INCLUDE:需要自动载入PHP文件路径,Worker需要知道你的Job的位置并载入Job * --count|COUNT:需要创建的...
foreach (System.Net.Cookie ck in response.Cookies) { this.cookie += ck.Name + "=" + ck.Value + ";"; } reader.Close(); return respHtml; } /// ///读取指定URL的文本 /// ///请求的地址 ///向...
8.3.4 FTP的日志文件—/var/log/ xferlog 149 8.4 FTP管理工具 149 8.4.1 ftpshut 149 8.4.2 ftpwho 150 8.4.3 ftpcount 150 8.5 使用FTP客户程序 150 8.5.1 autoexpect 152 8.5.2 ncftp 152 8.5.3 tftp 153 8.5.4 ...