JAVA 定义方法里,前面是list类型,那么返回应该是什么?

public List<Log> findAllLogs() {
Log log=null;
Connection con=null;
Statement stm=null;
ResultSet rs=null;
String sql="select * from wangxuan_log";
try{
con=ConnectionFactory.getConnection();
stm=con.createStatement();
rs=stm.executeQuery(sql);
while(rs.next()){
log=new Log();
log.setId(rs.getInt(1));
log.setLog_title(rs.getString(2));
log.setLog_content(rs.getString(3));
log.setLog_date(rs.getDate(4));
log.setRemark(rs.getString(5));
}
con.commit();
}catch(SQLException e){
e.printStackTrace();
if(con!=null){
try {
con.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
}finally{
JdbcUtil.release(con, stm, rs);
}

//return List;
}
这个方法应该返回list类型?我想让返回log,如何做啊?或者把log放到list中也行。

第1个回答  推荐于2016-11-25
这个方法应该返回list塞,,
把log对象放到list中,然后返回list就OK 。
这样放。

ArrayList list=new ArrayList();
while(rs.next()){
log=new Log();
log.setId(rs.getInt(1));
log.setLog_title(rs.getString(2));
log.setLog_content(rs.getString(3));
log.setLog_date(rs.getDate(4));
log.setRemark(rs.getString(5));
list.add(log);//把log放到list.
}

return list;本回答被提问者采纳
第2个回答  2008-12-24
public List<Log> findAllLogs() {
肯定返回List么,是你自己要它返回这个类型的,这是个List泛型,想返回log的话那你遍历一下list就行啦,Log log=new Log();
for(int i=0;i<List.siza;i++){
log=(Log)List.get(i);//用不用强转你自己试一下就行啦
}
如果list里面只有一个Log的话
那么就直接Log=List.get(0);
方法有很多种
第3个回答  2008-12-24
return new ArrayList().add(log);