如何按照订单在两行中打印数字,第1行中的前4行和第2行中的后4行?

时间:2014-03-28 13:13:29

标签: jsp for-loop stringbuilder

<body>
    <%
        int apps = 8;
        out.println("<div>");
        out.println("<table>");
        StringBuilder Row1 = new StringBuilder();
        Row1.append("<tr>");
        StringBuilder Row2 = new StringBuilder();
        Row2.append("<tr>");
        for (int i = 0; i < apps; i++) {
            if (i % 2 == 0) {
                Row1.append("<td>" + i + "</td>");
            }
            if (i % 2 == 1) {
                Row2.append("<td>" + i + "</td>");
            }
        }
        Row1.append("</tr>");
        Row2.append("</tr>");
        out.println(Row1.toString());
        out.println(Row2.toString());
        out.println("</table>");
        out.println("</div>");
    %>
</body>

这是我的jsp页面。目前,我在第1行获取输出:0 2 4 6和第2行:1 3 5 7。但我需要输出Row1:1 2 3 4和Row2:5 6 7 8。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我只更改了if子句

中的条件
for (int i = 0; i < apps; i++) {
            if ( i<4) {
                Row1.append("<td>" + i + "</td>");
            }
            if (i>3 && i<8) {
                Row2.append("<td>" + i + "</td>");
            }
        }

输出

 Row1 : 0123  
 Row2 : 4567

工作演示:http://ideone.com/PMiknB .dint尝试了任何html部分