读书人

向list 集中惠存bean 总是只能取出最后

发布时间: 2013-03-10 09:38:39 作者: rapoo

向list 集中存入bean 总是只能取出最后一个bean的值
Book book=new Book(); //Book bean
List<Book> list = new ArrayList<Book>();
for ( Iterator i = root.elementIterator( "book" ); i.hasNext(); ) {
Element foo = (Element) i.next();

book.setBookId(foo.attributeValue("bookId"));
book.setBookName(foo.attributeValue("bookName"));
Double price =Double.parseDouble(foo.attributeValue("bookPrice"));
book.setBookPrice(price);
book.setBookAuthor(foo.attributeValue("bookAuthor"));
book.setDescription(foo.attributeValue("description"));
list.add(book);

}
return list; ?
[解决办法]

List<Book> list = new ArrayList<Book>();
for ( Iterator i = root.elementIterator( "book" ); i.hasNext(); ) {
Book book=new Book(); //Book bean
Element foo = (Element) i.next();

book.setBookId(foo.attributeValue("bookId"));
book.setBookName(foo.attributeValue("bookName"));
Double price =Double.parseDouble(foo.attributeValue("bookPrice"));
book.setBookPrice(price);
book.setBookAuthor(foo.attributeValue("bookAuthor"));
book.setDescription(foo.attributeValue("description"));
list.add(book);

}
return list;
试一下
[解决办法]
你把Book book = new Book()放到循环里面就行了,你相当于是把同一个对象重复放入list

读书人网 >J2SE开发

热点推荐