List<Question>  qlist=qdao.listAllQuestion(Long.valueOf(request.getParameter("sid")));
//String obj=request.getParameter("obj");
String to=request.getParameter("to");qlist:
for(Question q:qlist){

   if(q.getQId()<Long.valueOf(to))
   continue;//this is to avoid generate the same question.
  
  
out.println("<li> "+q.getQHead() +" </li>");
out.println("<ul type='1'>");
   String [] body=q.getQBody().split("&\\$\\$&");
   String[] sz_jdtz;
   int Jdtz;
  switch(q.getQType().intValue()){
  case 1:
  sz_jdtz =q.getQJdtz().split("&");
   //Jdtz=0;
  for(int i=0;i<body.length;i++){
  if("over".equals(sz_jdtz[i]))
  out.println("<li><input type='radio' name='answer"+q.getQId()+"' value='"+i+"' onclick='EndSurvey("+q.getQId()+")'>"+body[i]+"</li>");
  else if("null".equals(sz_jdtz[i])){
  out.println("<li><input type='radio' name='answer"+q.getQId()+"' value='"+i+"' onclick=showNext('qbox"+q.getQId()+"',"+(q.getQId()+1)+")>"+body[i]+"</li>");
  // Jdtz++;
  }else{
  out.println("<li><input type='radio' name='answer"+q.getQId()+"' value='"+i+"' onclick=jump('qbox"+q.getQId()+"',"+sz_jdtz[i]+")>"+body[i]+"</li>");
  }
  }
  out.println("</ul><br/>");
out.println("<div id=qbox"+q.getQId()+"></div>");
  //if(Jdtz==body.length)
  //break;
  //else
break qlist;// this is a 'single choice'  , it may have jump or break,so  stop generate list,wait for user's choice.
 

解决方案 »

  1.   

    这是jdk1.5新增的  增强型循环,是for循环的一种循环方式,性能上可能比传统下标方式要快一些。尤其是对Map的遍历,十分方便。
      

  2.   

    这是循环标记,方便跳出循环,尤其是多重循环
    你看一下这篇文章:http://lihengzkj.iteye.com/blog/1090034
      

  3.   

    qlist:
    这种东西吗?
    标签语句
    不建议使用
      

  4.   

       这是JDK1.5后新增的增强for循环,是利用迭代器iterator来获取里面的值。总的来说,它不能直接根据下标值来取出内容,又不能像iterator来方便地删除集合中的内容。它只能简单的遍历读取内容。
       所以不推荐使用。
      

  5.   

    这个我们叫做for each 就是循环遍历集合或数组里面每一个的意思
    例如:
    List<String> list = new ArrayList<String>();
    for(String s : list){
        System.out.println(s);
    }
    就是把list集合里面的所有对象都打印出来
    for(int i=0;i<list.size();i++){
        System.out.println(list.get(i));
    }
    这两个结果是一样的
      

  6.   

    给大家看一个神奇的东西,代码能正确编译哦
    public class Main { public static void main(String[] args){
    fun:fun2();
    }

    public static void fun(){

    }
    public static void fun2(){

    }
    }lz的代码有2个内容:Java中以前的goto语句(就是上面说的跳转标签);另一个是Java 1.5新增的集合遍历foreach语法