我用add添加值后,遍历ArrayList里面的值,发现都是最后一个值,前面add进去的都被覆盖掉了,真心不明白,网上说的都是把对象在while循环里面new出来,我也懂,并且确实是这么做的,但是还是不行,不知道为什么,求各位码友帮忙。
代码如下:
ResultSet resultSet=SqlConnector.SqlSearch_result(sqlcom_goods);
ArrayList<GoodDetails_data> gd_arrayList=new ArrayList<GoodDetails_data>();
GoodDetails_data goodDetails_data;
while(resultSet.next())
{
goodDetails_data=new GoodDetails_data();
goodDetails_data.setGoodID(resultSet.getInt("goodsID"));
goodDetails_data.setSalerID(resultSet.getInt("salerID"));
goodDetails_data.setGoodTitle(resultSet.getString("title"));
goodDetails_data.setCategory(resultSet.getString("category"));
goodDetails_data.setPrice(resultSet.getString("price"));
goodDetails_data.setDescible(resultSet.getString("de"));
goodDetails_data.setPic(resultSet.getString("pic"));
// System.out.println("resultset:"+goodDetails_data.getGoodTitle());
gd_arrayList.add(goodDetails_data);
System.out.println("arraylist:"+gd_arrayList.get(0).getGoodTitle());
}
------解决方案--------------------
说明你根本没有遍历ArrayList。
for (int i=0;i<gd_arrayList.size();i++) {
System.out.println("arraylist:"+gd_arrayList.get(i).getGoodTitle());
}
------解决方案--------------------
哦,还没看明白,结果就出来了。。。
------解决方案--------------------
ResultSet resultSet=SqlConnector.SqlSearch_result(sqlcom_goods);
ArrayList<GoodDetails_data> gd_arrayList=new ArrayList<GoodDetails_data>();
GoodDetails_data goodDetails_data;
int i = 0 ;
while(resultSet.next())
{
goodDetails_data=new GoodDetails_data();
goodDetails_data.setGoodID(resultSet.getInt("goodsID"));
goodDetails_data.setSalerID(resultSet.getInt("salerID"));
goodDetails_data.setGoodTitle(resultSet.getString("title"));
goodDetails_data.setCategory(resultSet.getString("category"));
goodDetails_data.setPrice(resultSet.getString("price"));
goodDetails_data.setDescible(resultSet.getString("de"));
goodDetails_data.setPic(resultSet.getString("pic"));
// System.out.println("resultset:"+goodDetails_data.getGoodTitle());
gd_arrayList.add(i,goodDetails_data);
i = i+1 ;
System.out.println("arraylist:"+gd_arrayList.get(0).getGoodTitle());
}
试试看 ; 不知道你bean里做什么处理没有