简单的问题,来帮帮我这个初学MM

susan14 2005-04-22 02:35:19
这是一个循环,但是得到了6条记录都是一样的。怎么样才能把循环里的记录分别装在每一个vector里?

try {
Vector books = guestFactory.list(conn);

Vector bookleft1=new Vector();
Vector bookright1=new Vector();
Vector bookleft2=new Vector();
Vector bookright2=new Vector();
Vector bookleft3=new Vector();
Vector bookright3=new Vector();

for(int i=0;i<books.size();i++){
Book bok=(Book)books.get(i);
bookmenuForm byfm=new bookmenuForm();

byfm.setBookmenuId(bok.getBookmenuId());
byfm.setName(bok.getName());
byfm.setWriter(bok.getWriter());
byfm.setPublisher(bok.getPublisher());
byfm.setPrice(String.valueOf(bok.getPrice()));
byfm.setDiscount(String.valueOf(bok.getDiscount()));
bookleft1.add(byfm) ;
bookright1.add(byfm);
bookleft2.add(byfm);
bookright2.add(byfm);
bookleft3.add(byfm);
bookright3.add(byfm);

}
request.setAttribute("bookleft1", bookleft1);
request.setAttribute("bookright1", bookright1);
request.setAttribute("bookleft2", bookleft2);
request.setAttribute("bookright2", bookright2);
request.setAttribute("bookleft3", bookleft3);
request.setAttribute("bookright3", bookright3);
}
finally {
conn.close();
}
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
discolt 2005-04-25
  • 打赏
  • 举报
回复

为何不这样设计:

public class Container {
// 容器类型
int type;
// 集合
Vector bookleft1=new Vector();

setter,getter ..

..
..
}
gloomsun 2005-04-23
  • 打赏
  • 举报
回复
根据i 的值用case
zhgj8750 2005-04-22
  • 打赏
  • 举报
回复
不好意思,刚才的回帖有个地方有错误,你给出的代码循环结束后,那6个Vector对象里存放的应该是所有查询内容,并且这6个Vector中的内容是一样的。
zhgj8750 2005-04-22
  • 打赏
  • 举报
回复
呵呵,你定义了bookleft1~bookright3共6个Vector对象存放查询数据,但每条查询的记录你向这6个Vector对象中分别放了一次,等循环结束后当然这6个Vector对象里存放的都是最后一次循环所得到的内容了。要修改正确的话有两个办法:一是你将bookleft1~bookright3这6个Vector再放到一个大的Vector中,然后在循环赋值的时候依次取出赋值。二是如果你的查询记录数不确定的话,你可以在循环之前定义一个大的Vector,然后每次循环时定义一个Vector将一次循环的数据放到小的Vector中,然后再将小的Vector放到大的Vector中,这样这个大的Vector就存放了所有的查询记录。
举个例子:
Vector books = guestFactory.list(conn);
Vector allBook = new Vector();
for(int i=0;i<books.size();i++)
{
Vector oneBook = new Vector();
Book bok=(Book)books.get(i);
bookmenuForm byfm=new bookmenuForm();
byfm.setBookmenuId(bok.getBookmenuId());
byfm.setName(bok.getName());
byfm.setWriter(bok.getWriter());
byfm.setPublisher(bok.getPublisher());
byfm.setPrice(String.valueOf(bok.getPrice()));
byfm.setDiscount(String.valueOf(bok.getDiscount()));
oneBook.add(byfm);
allBook.add(oneBook);
}

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧