我知道这应该是简单的,我可能正直盯着问题,但我再次陷入困境,需要代码专家的帮助。

我试图从jdbc的一列中取出一行,然后将它们放入数组中。

我这样做如下:

public void fillContactList()
       {
           createConnection();
           try
           {
               Statement stmt = conn.createStatement();
               ResultSet namesList = stmt.executeQuery("SELECT name FROM Users");
               try
               {
                   while (namesList.next())
                   {
                       contactListNames[1] = namesList.getString(1);
                       System.out.println("" + contactListNames[1]);
                   }
               }
               catch(SQLException q)
               {

               }
               conn.commit();
               stmt.close();
               conn.close();
           }
           catch(SQLException e)
           {

           }

creatConnection是已经定义的方法,可以执行其明显的工作。
我创建我的结果集
还有另外一个
我将该列的字符串存储到数组中。
然后打印出来以备不时之需。还要确保它在那里。

问题在于其将整个列存储到contactListNames [1]中

我想让它将column1第1行存储到[1]中

然后将第1列第2行插入[2]

我知道我可以循环执行此操作。但我也不知道一次只从一列中取出一行。有任何想法吗?

p.s ive我读过api,我看不到任何合适的东西。

最佳答案

您应该使用ArrayList,它提供了自动扩展数组的所有逻辑。

List rowValues = new ArrayList();
while (namesList.next()) {
    rowValues.add(namesList.getString(1));
}
// You can then put this back into an array if necessary
contactListNames = (String[]) rowValues.toArray(new String[rowValues.size()]);

关于java - 将结果集存储到数组中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2699963/

10-10 17:02