JSTL迭代操作--c:forEach,c:forTokens

1.c:forEach

1.1遍历Collection

<h4>c:forEach:可以对数组,Collection,Map进行遍历</h4>
     <c:forEach begin="1" end="10" step="3" var="i">
            ${i }-
     </c:forEach>
     <br><br>
     
     <%
        List<Customer> custs=new ArrayList<Customer>(); 
        custs.add(new Customer(1,"AAA"));
        custs.add(new Customer(2,"BBB")); 
        custs.add(new Customer(3,"CCC"));
        custs.add(new Customer(4,"DDD"));
        custs.add(new Customer(5,"EEE"));
        request.setAttribute("custs", custs);
     %>
       <c:forEach items="${requestScope.custs }" var="cust" >
       ${cust.id }: ${cust.name }<br>
       </c:forEach>

运行结果
在这里插入图片描述
将代码部分修改为
在这里插入图片描述
运行结果为
在这里插入图片描述

1.2遍历Map

代码

 <h5>遍历Map</h5>
      <%
        Map<String,Customer> custMap=new HashMap<String,Customer>(); 
        custMap.put("a",new Customer(1,"AAA"));
        custMap.put("b",new Customer(1,"BBB"));        
        custMap.put("c",new Customer(1,"CCC"));       
        custMap.put("d",new Customer(1,"DDD")); 
        custMap.put("e",new Customer(1,"EEE"));
        custMap.put("f",new Customer(1,"FFF"));
        request.setAttribute("custMap", custMap);

        %>
      <c:forEach items="${requestScope.custMap }" var="cust">
           ${cust.key }-${cust.value.id }-${cust.value.name }<br>
      </c:forEach>

结果
在这里插入图片描述

1.3遍历数组

代码

 <h5>遍历数组</h5>
      <%
      String[] names=new String[]{"A","B","C"};
      request.setAttribute("names", names);
      %>
      <c:forEach var="name" items="${names }">
      ${name }-
      </c:forEach>

运行结果
在这里插入图片描述

切记数组没法改变自己的长度,如果是不定长度的,不能使用数组

2.c:forTokens

处理字符串,类似于String的split()方法
代码

<h4>c:forTokens</h4>
     <c:set value="a,b.c.d.e;f;j" var="test" scope="request"></c:set>
     <c:forTokens items="${requestScope.test }" delims="," var="s">
     ${s }<br>
     </c:forTokens> 
      

结果
在这里插入图片描述

问题

  • 在JSP页面中插入类
<%@ page import="test.Customer" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
  • Property ‘id’ not found on type Customer
    在Customer中没有写get和set方法导致这个错误
    欢迎留言交流!!!
    在这里插入图片描述
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值