九九乘法表(标签)

九九乘法表的输出是一个很经典的循环输出例子,从接触编码开始,就在不断地学习。那么在jstl标签库中怎么进行这个例子输出呢?

      在jstl中用到了<c:forEach>迭代标签,首先了解一下forEach标签吧:forEach包含的属性:var,items,varStatus,begin,end,step

[html]
  1. <c:forEach [var=”varName”]items=”collection” [varStatus=”varStatusName”] [begin=”begin”] [end=”end”] [step=”step”]></c:forEach> 
<c:forEach [var=”varName”]items=”collection” [varStatus=”varStatusName”] [begin=”begin”] [end=”end”] [step=”step”]></c:forEach>

详细解释:

[]包括的内容是可有可无的,没有[]包含的表示必须要写的属性

var:不支持el表达式,是String字符串类型,作用是决定是否处理标签体内容;

items:支持el表达式,可以是数组、字符串和各种集合类型,放置将要迭代的集合对象

varStatus:不支持el表达式,是String字符串类型,表示迭代的状态,可以获得迭代自身的信息

begin:支持el表达式,int型,如果指定begin属性,就从item下表为begin的位置开始迭代,相当于for循环里的=赋值;若没有指定begin属性,就从0下标开始迭代

end:支持el表达式,int型,如果指定end属性,就在item下标为end的位置结束迭代,相当于for循环里的<=;若没有指定end属性,将迭代到item最后位置

step:支持el表达式,int型,默认的步长是1,相当于for循环里的++。如果指定step属性值,就把指定值作为步长

java中的九九乘法表输出代码:

      

[java]
  1. for (int i = 1; i <= 9; i++) { 
  2.  
  3.         for(int j=1;j<=i;j++){ 
  4.  
  5.            int k=i*j; 
  6.  
  7.            System.out.print(j+"*"+i+"="+k+"\t"); 
  8.  
  9.         } 
  10.  
  11.         System.out.println("\n"); 
  12.  
  13.     } 
   for (int i = 1; i <= 9; i++) {

           for(int j=1;j<=i;j++){

              int k=i*j;

              System.out.print(j+"*"+i+"="+k+"\t");

           }

           System.out.println("\n");

       }

用jstl标签写的代码,并输入表格:

[html]
  1. <table width="60%"> 
  2.  
  3.     <!-- 循环输出1~9之间的数字 --> 
  4.  
  5.     <!-- varStatus判断迭代次数 --> 
  6.  
  7.     <c:forEach var="itemi"begin="1" end="9"varStatus="status"> 
  8.  
  9.         <tr> 
  10.  
  11.         <c:forEach var="itemj"begin="1" end="${itemi}"varStatus="status"> 
  12.  
  13.            <td> 
  14.  
  15.            <c:out value="${itemj}*${itemi}=${itemi*itemj}"></c:out> 
  16.  
  17.            </td> 
  18.  
  19.            </c:forEach> 
  20.  
  21.         </tr> 
  22.  
  23.         </c:forEach> 
  24.  
  25.     </table> 
   <table width="60%">

       <!-- 循环输出1~9之间的数字 -->

       <!-- varStatus判断迭代次数 -->

       <c:forEach var="itemi"begin="1" end="9"varStatus="status">

           <tr>

           <c:forEach var="itemj"begin="1" end="${itemi}"varStatus="status">

              <td>

              <c:out value="${itemj}*${itemi}=${itemi*itemj}"></c:out>

              </td>

              </c:forEach>

           </tr>

           </c:forEach>

       </table>


   添加颜色间隔的css文件:

[html]
  1. <!-- 设置间隔颜色 --> 
  2.  
  3. <style type="text/css"> 
  4.  
  5. .even { 
  6.  
  7. background-color: red 
  8.  
  9.  
  10.  
  11.  
  12. .odd { 
  13.  
  14. background-color: yellow 
  15.  
  16.  
  17.   
  18. <!--鼠标移动到时,显示的颜色--> 
  19. tr:hover { 
  20.  
  21. background-color: blue 
  22.  
  23.  
  24. </style> 
   <!-- 设置间隔颜色 -->

    <style type="text/css">

    .even {

    background-color: red

    }

 

    .odd {

    background-color: yellow

    }

    
   <!--鼠标移动到时,显示的颜色-->
    tr:hover {

    background-color: blue

    }

    </style>


将css代码添加到表格中:

[html]
  1. <!--三目运算符的使用,迭代偶数次时,该行显示odd的颜色;迭代奇数次时,该行显示even的颜色--> 
<!--三目运算符的使用,迭代偶数次时,该行显示odd的颜色;迭代奇数次时,该行显示even的颜色-->
[html]
  1. <tr class="${status.count%2==0?'odd':'even'}"> 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值