jsp數組定義,遍曆輸出方法

來源:互聯網
上載者:User

數組定義對於開始不知道長度的數組,可以用vector,還可能arraylist、hashtable、map、hashmap
簡單建立一個數組

<html>
  <head>
    <title>creating an array</title>
  </head>

  <body>
    <h1>creating an array</h1>
    <%
        double accounts[];
        accounts = new double[100];
        accounts[3] = 119.63;

        out.println("account 3 holds $" + accounts[3]);
     %>
  </body>
</html>

二維數組

<html>
  <head>
    <title>using multidimensional arrays</title>
  </head>

  <body>
    <h1>using multidimensional arrays</h1>
    <%
        double accounts[][] = new double[2][100];

        accounts[0][3] = 119.63;
        accounts[1][3] = 194.07;

        out.println("savings account 3 holds $" + accounts[0][3] + "<br>");
        out.println("checking account 3 holds $" + accounts[1][3]);
     %>
  </body>
</html>

對數組中元素排序

<%!
    void doubler(int a[])
    {
        for (int i = 0; i < a.length;i++) {
            a[i] *= 2;
        }
    }
    %>

    <%
        int array[] = {1, 2, 3, 4, 5};

        out.println("before the call to doubler...<br>");
        for (int i = 0; i < array.length;i++) {
            out.println("array[" + i + "] = " + array[i] + "<br>");
        }

        doubler(array);

        out.println("after the call to doubler...<br>");
        for (int i = 0; i < array.length; i++) {
            out.println("array[" + i + "] = " + array[i] + "<br>");
        }
    %>

遍曆數組

while(rs2.next())
   {
    count++;
   }
   string grade5name[]=new  string[count];
   float mark[]=new float[count];
   while(rs2.next())
   {
    grade5name[i]=rs2.getstring("grade5name");
    mark[i]=rs2.getfloat("mark");
    i++;
   }

自己看一下這段代碼,有兩個rs.next()的判斷迴圈遍曆。
第一個while(rs2.next()),迴圈之所以會結束,跳出,是因為rs已經遍曆完了,這個時候, rs裡面的指標是指向最後一條記錄的後面的,所以,在第二個while(rs2.next())的時候,rs2.next()肯定是false了,當然不會再執行第二個迴圈。因為第二個迴圈不可能會執行,所以,永遠都不會得到相應的資料的呀。如果你想要第二次遍曆,那必須在第二個while迴圈之前再查詢一次才可以。
再有,不知道你為什麼非要用數組,其實,用一個迴圈就夠了,不要用數組,用集合會好一些。

<%
   list<string> gradenamelist = new arraylist<string>();
   list<float> marklist = new arraylist<string>();
   while(rs2.next())
   {
    gradenamelist.add(rs2.getstring("grade5name"));
    marklist.add(rs2.getfloat("mark"));
   }
  for(int s=0;s < marklist.size();s++)
   {
%>
<tr>
    <td width="21"><input type="radio" name="mark" value="<%=marklist.get(s) %>" /></td>
    <td width="909"><%=gradenamelist.get[s] %></td>
  </tr>
<%
   }
%>
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.