如果我将while(rs.next){}中的add(userid,name,userAccount,password,post,i);去掉的话循环就可以遍历rs中的所有数据,但是只要我把这句添上运行但这句就直接报错或结束了
```
tableuser[] tableusers=null
public List<tableuser> cxuser(String userid) throws InterruptedException, ExecutionException, SQLException {
String sql="select * from user ;"
FutureTask<tast> task=new FutureTask<>(new Callable<tast>() {
@Override
public tast call() throws Exception {
tast t=new tast()
try {
Thread.sleep(100)
} catch (InterruptedException e) {
throw new RuntimeException(e)
}
try {
Class.forName("com.mysql.jdbc.Driver")
} catch (ClassNotFoundException e) {
//throw new RuntimeException(e)
}
try {
conn= DriverManager.getConnection(url,user,password)
PreparedStatement statement = (PreparedStatement) conn.prepareStatement(sql)
ResultSet rs= statement.executeQuery()
int i=0
////////// 以下是问题代码段 ////////////
////////// 以下是问题代码段 ////////////
////////// 以下是问题代码段 ////////////
////////// 以下是问题代码段 ////////////
本来想使用list创造一个tableuser的集合,但是也不行
while (rs.next()){
i=i+1
String name
String userid
String userAccount
String password
String post
name=rs.getString("name")
userid=rs.getString("userid")
userAccount=rs.getString("userAccount")
password=rs.getString("password")
post=rs.getString("post")
Log.d("id",userid)
add(userid,name,userAccount,password,post,i)
Thread.sleep(20)
}
////////// 以上是问题代码段 ////////////
////////// 以上是问题代码段 ////////////
////////// 以上是问题代码段 ////////////
////////// 以上是问题代码段 ////////////
Log.d("程序查询以运行","成功")
rs.close()
statement.close()
conn.close()
} catch (SQLException e) {
Log.d("conn尝试连接","失败")
throw new RuntimeException(e)
}
return t
})
Thread thread=new Thread(task)
thread.start()
return null
}
```
int he=0
private void sum(){
he=he+1
}
public void add(String a,String b,String c,String d,String e,int i){
tableuser user=new tableuser(a,b,c,d,e)
tableusers[i]=user
}
public void add1(int i){
tableusers=new tableuser[i]
}