这段代码中 String 用法 (JSP)

<% int examResult=0;
String []str=new String[5];
String []DA={"","A","B","D","B"};
%>
<%
for(int i=1;i<=4;i++)
{
String num=Integer.toString(i);
str[i]=request.getParameter(num);
if(str[i].equals(DA[i]))
examResult++;
}
%>

本次成績為:<%= examResult*100/4 %>分





現在時間是:<%= new java.util.Date() %>

没看懂你写的什么,你的意思是不是要比较两个数组?就如你定义的数组一样,两个数组长度一样。
比较:

如下比较
for(int i=0;i<str.length;i++)
{
for(int j=0;j<DA.length;j++){
       if(str[i].equals(DA[j]))
           {
              examResult++;
            }
        }
}

String num=Integer.toString(i);
str[i]=request.getParameter(num);

request.getParameter(num)取的是input输入框 name="1","2","3","4"的值吧

這段程式的情境是這樣子的,
有一張4個選擇題的考卷,考生考完後答案會用四個參數名1, 2, 3跟4傳到這個頁面,
例如

 http://localhost:8080/test/checkanswer?1=A&2=B&3=D&4=C

4題選擇題的正確答案為A, B, D, B,
從1到4的for loop只是把考生的答案取出,
並且依序比對是否為A, B, D, B,
相等表示答對,examResult加一,
最後examResult就表示答對的題數,
滿分是100分,所以成績自然就是 examResult*100/4 分了