注意List集合中的对象类型,像你局的例子,如果是基于泛型定义的a(ArrayList<List> a),并赋值,可以直接aget(0)size();否则请将取出的值(Object)强制转换为List,再获取size,如:((List)aget(0))size()
<c:forEach items="${list}" var="menu" varStatus="i">
<div class="<c:if test="${iindex%9==0 }">current</c:if>clearfix">
<a href="#"><span>${menu}</span></a><c:if test="${(iindex+1)%9==0 }"><br><br><br><br><br><br><br> </c:if>
</div>
</c:forEach>
大概写了下,应该就是这样加层判断就好了
根据功能可以分为五大类:
1、核心标签
2、格式化标签
3、SQL 标签
4、XML 标签
5、JSTL 函数
一、核心标签
1、<c:out />标签会自动忽略XML标记字符,所以它们不会被当做标签来处理。标签用来显示一个表达式的结果,与<%= %>作用相似,它们的区别就是<c:out>标签可以直接通过"" *** 作符来访问属性。
<c:out>标签有如下属性:
scope 的作用域大小依次为:
application > session > request > page(默认)
jsp 处理变量的作用域先后依次为:
page(默认) -> request -> session -> application
2、<c:set>标签用于设置变量值和对象属性。
3、<c:remove>标签用于移除一个变量。
4、<c:catch> 标签主要用来处理产生错误的异常状况,并且将错误信息储存起来。
5、<c:choose>标签与Java switch语句的功能一样,用于在众多选项中做出选择。
switch语句中有case,而<c:choose>标签中对应有<c:when>,switch语句中有default,而<c:choose>标签中有<c:otherwise>。
<c:when>标签的属性如下:
6、<c:import>标签提供了所有<jsp:include>行为标签所具有的功能,同时也允许包含绝对URL。
<c:import>标签有如下属性:
7、<c:forEach>标签用作迭代一个集合中的对象。
语法格式:
<c:forTokens
items="<string>"
delims="<string>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
<c:forEach>标签有如下属性:
c:forEach varStatus 属性
current : 当前这次迭代的(集合中的)项
index : 当前这次迭代从 0 开始的迭代索引
count : 当前这次迭代从 1 开始的迭代计数
first : 用来表明当前这轮迭代是否为第一次迭代的标志
last : 用来表明当前这轮迭代是否为最后一次迭代的标志
begin : 属性值
end : 属性值
step : 属性值
例如:
<c:foreach items="${sessionScopeuserList}" var="userItem" begin="1" end="10" step="3" varStatus="userStatus"> XXX </c:foreach>
实例解读: 对 session 对象存储的 userList 集合对象进行遍历,每次访问的项暂时存储在 userItem 变量中,从索引 1 开始至索引 10 进行访问,但不是依次访问,每隔 3 个元素访问一次。每次访问项的状态相关值由 userStatus 对象暂存。
<c:foreach> 的 varStatus 属性暂存项的相关状态属性,可由 EL 表达式引用。
${userStatusindex} 此项的索引,从0开始
${userStatuscount} 此项的计数序号,从1开始
${userStatusfirst} 此项是否是第一项,布尔值
${userStatuslast} 此项是否是最后一项,布尔值
${userStatusbegin} 此次迭代的起始索引,对应<c:foreach>中begin属性值
${userStatusend} 此次迭代的终止索引,对应<c:foreach>中end属性值
${userStatusstep} 此次迭代的跳跃步伐,对应<c:foreach>中step属性值
8、<c:forTokens>标签通过指定分隔符将字符串分隔为一个数组然后迭代它们。
<c:forTokens
items="<string>"
delims="<string>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
9、<c:url>标签将URL格式化为一个字符串,然后存储在一个变量中。
这个标签在需要的时候会自动重写URL。
var属性用于存储格式化后的URL。
<c:url>标签只是用于调用responseencodeURL()方法的一种可选的方法。它真正的优势在于提供了合适的URL编码,包括<c:param>中指定的参数。
<c:url>标签有如下属性:
10、<c:param>标签用于在<c:url>标签中指定参数,而且与URL编码相关。
在<c:param>标签内,name属性表明参数的名称,value属性表明参数的值。
语法格式:
<c:param name="<string>" value="<string>"/>
<c:param>标签有如下属性:
11、<c:redirect>标签通过自动重写URL来将浏览器重定向至一个新的URL,它提供内容相关的URL,并且支持c:param标签。
c:redirect标签有如下属性:
二、格式化标签
JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下:
<%@ taglib prefix="fmt uri=">
以上就是关于JAVA中获取列表中列表长度的问题全部的内容,包括:JAVA中获取列表中列表长度的问题、jsp 后台取出一个list集合数据若干,前台显示每9个一组,用jstl标签显示、JSTL标签等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)