forEach同时遍历两个List方法的实例教程
程序员文章站
2023-12-25 17:57:21
有时我们拿到两个长度相等的list,不想封装到一起,又想同时遍历,就需要用到下面的方法。
这里需要遍历两个list:gallerylist 和 classlist
<...
有时我们拿到两个长度相等的list,不想封装到一起,又想同时遍历,就需要用到下面的方法。
这里需要遍历两个list:gallerylist 和 classlist
<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 正常使用常规方法即可。
第二个 classlist , 我们使用 varstatus 这个关键属性,那么当值为 loop 时,loop.count 代表当前被遍历元素块已执行的次数,例如,当遍历到第五次时,gallerylist 已经按顺序取到 index 为 4 的值,同样 classlist 也需要取 index 为 4 的值,这时用 [loop.count-1] 来标注 index ,刚好为 4 。