这里是我想存入链表的操作。
try {
//从数据库中获取所有课程
getclass.showclass();
} catch (Exception e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
//初始化链表
LinkedList classlist = new LinkedList();
//定义链表连接变量i
int z = -1;
//while循环获取课程信息并存入链表classlist。
try {
while (getclass.rs.next()) {getclass.setName(getclass.rs.getString("name"));
getclass.setOther(getclass.rs.getString("other"));
getclass.setTeacher(getclass.rs.getString("teacher"));
getclass.setTime(getclass.rs.getString("time"));
getclass.setTwoclasses(getclass.rs.getString("twoclasses"));
//存入链表
String times = getclass.rs.getString("time");
int intTime = Integer.parseInt(times);
//通过循环,把具有一周上多次课的课程多次加入链表。
for (int a = 0; a <intTime; a++) {
//z++;
// classlist.add(z, getclass);
//classlist.add(getclass);
classlist.add(getclass);
}}
} catch (SQLException e) {
System.out.print(e.getMessage());
}

解决方案 »

  1.   

    这里是我想从链表中读出的操作:
    int listsize = classlist.lastIndexOf(getclass) + 1;
    int listsize2 = classlist.lastIndexOf(getclass) + 1;
    Random random = null;
    PrintWriter out = response.getWriter();out.print("<center>");
    out.print("<br>");
    out.print("<br>");
    out.print("显示课表如下");
    out.print("<br>");
    out.print("<br>");
    out.print("<br>");
    out.print("<table border=4 width=600>");int k;
    int j;
    for (k = 0; k < intY + 1; k++) {
    out.print("<tr>");
    for (j = 0; j < intX + 1; j++) {
    out.print("<td>");
    out.print(" ");
    int a = k;
    if (k != 0 && j == 0) {
    out.print("第" + a + "节");
    } else {
    out.print("");
    int b = j;
    if (j != 0) {
    if (k == 0) {
    out.print("星期" + b);
    } else {
    }
    } else {
    out.print("");
    }
    }
    if (k != 0 && j != 0 && listsize2 != 0) {
    //----------------------------------
    //ddk = random.nextInt();
    // out.print(classlist.getFirst());
    //ddk= random.nextInt(listsize2);//ddk=listsize2-1;//classlist.get(tests);
    classlist.get(listsize2 - 1);
    //classlist.getLast();
    listsize2--;
    out.print(getclass.getName());
    } else if (k != 0 && j != 0) {
    out.print("  ");
    }out.print("</td>");
    }
    out.print("</tr>");
    }
    out.print("</table>");
    out.print("<br>");
    out.print("</center>");
    //out.print(ddk);
    我是新手,代码写得太乱,还请大家指教。
    谢谢。
      

  2.   

    每一次作完setXXX()之后就应该将已赋值的对象加入到链表中,否则只能是最后一个被赋值的对象能加如到链表,例:
    LinkedList aList=new LinkedList();
    for (...){
    Sting aString="a"+i; //setXXX()方法类似
    aList.add(aString);
    }
      

  3.   

    我的也是这么做的啊。。set()后面就直接加入链表了啊,怎么还是不行呢?
      

  4.   

    while (getclass.rs.next()) {getclass.setName(getclass.rs.getString("name"));
    getclass.setOther(getclass.rs.getString("other"));
    getclass.setTeacher(getclass.rs.getString("teacher"));
    getclass.setTime(getclass.rs.getString("time"));
    getclass.setTwoclasses(getclass.rs.getString("twoclasses"));
    这种写法有问题
    试着可以把getclass这个当成一个VO类//比如getclass为:GetClassVO
    然后:
    while(rs.next()){
    GetClassVO vo=new GetClassVO();
    vo.set...(rs.getXXX());
    ....}
    上面的只是个你一个思路而已
      

  5.   

    兄弟!你写的代码也太乱一点,去找一个例子慢慢学着吧!
    jdbc的用法写简单一些,压入栈表写一次就行,栈表中轮循用iterator()
      

  6.   

    解决办法是多次实例化myclass...