forEach 同时遍历两个List方法的说明

有时咱们拿到两个长度相等的List,不想封装到一块儿,又想同时遍历,就须要用到下面的方法。html

这里须要遍历两个List:gallerylist 和 classlistoop

<c:forEach items="${requestScope.gallerylist}" var="gallerylist" varStatus="loop">
	<h4 class="card-title">${gallerylist.title}</h4>
	<p class="card-text">
		<span class="badge badge-${classlist[loop.count-1][0]}">${gallerylist.label_1}</span>
		<span class="badge badge-${classlist[loop.count-1][1]}">${gallerylist.label_2}</span>
		<span class="badge badge-${classlist[loop.count-1][2]}">${gallerylist.label_3}</span>
		<span class="badge badge-${classlist[loop.count-1][3]}">${gallerylist.label_4}</span>
		<span class="badge badge-${classlist[loop.count-1][4]}">${gallerylist.label_5}</span>
	</p>
</c:forEach>

第一个 gallerylist 正常使用常规方法便可。spa

第二个 classlist , 咱们使用 varStatus 这个关键属性,那么当值为 loop 时,loop.count 表明当前被遍历元素块已执行的次数,例如,当遍历到第五次时,gallerylist 已经按顺序取到 index 为 4 的值,一样 classlist 也须要取 index 为 4 的值,这时用 [loop.count-1] 来标注 index ,恰好为 4 。code