类似于for和foreach循环,它有两种写法,分别是
循环遍历,输出所有的元素
<c:foreach items="${list}" var="i">
${i}
</c:foreach>
注意:items 用于接收集合对象,var 定义对象接收从集合里遍历出的每一个元素。同时其会自动转型。
循环遍历,输出一个范围类的元素。
<c:forEach begin="0" end="${list.size()}" var="i">
${i}
</c:forEach>
注意:begin 定义遍历的开始位置,end定义遍历的结束位置。begin 和end的引号必须写。
Demo代码
<%
List<User> list = new ArrayList<>();
User user1 = new User();
user1.setName("小绿");
user1.setSex("女");
User user2 = new User();
user2.setName("小黑");
user2.setSex("男");
list.add(user1);
list.add(user2);
// java程序中的写法
// for (int i = 0; i < list.size(); i++) {
// System.out.println(i);
// }
// for (User user : list) {
// System.out.println(user.getName());
// }
request.setAttribute("list",list);//把list放入域对象,后面从集合其中取数据
%>
<c:forEach begin="0" end="${list.size()-1}" var="i">
${list[i].name}
</c:forEach>
<c:forEach items="${list}" var="user">
${user.name}
</c:forEach>