java - 将 ArrayList<Object[]> 转换为 Object[]

标签 java arrays object arraylist

我几天来一直在寻找这个问题,但似乎找不到正确的答案。 所以我有一个对象(ArrayList)形式的数组的ArrayList,其中填充了SQL字符串的结果集。我的目标是将只有一行的结果转换为一维对象数组。

我已经多次尝试从这个网站得到的研究结果,但我所学到的唯一知识就是如何将一维 ArrayList 转换为简单数组。 我希望你们能在某些方面帮助我。谢谢!

我的 table 是这样的:

sizeid | diameter
   1   |    32
   2   |    40

通过 SQL 命令“从大小中选择直径”,我将获得这两个数字 32 和 40,并将其存储在一个简单的 2x1 表中。

|  32  |
|  40  |

现在我想将它们放入一维数组中。

转换方法:

private Object[] getSizes() {
   query = new SQLquery();
   query.setSQLstring("SELECT diameter FROM size");
   query.runQuery();

   List<Object> sizeList = query.getRowData();
   Object[] sizes = new Object[sizeList.size()];

   // here I want to convert the List to an array..

   return sizes;
}

SQLquery类的ArrayList生成方法:

public void outputResult() {
    try {
       if (result != null) {
          ResultSetMetaData meta = result.getMetaData();
          columns = meta.getColumnCount();
          columnNames = new Object[columns];
          for (int i=1; i<=columnNames.length; i++) {
             columnNames[i-1] = meta.getColumnName(i);
          }
          List<Object> rowData = new ArrayList<Object>();
          while (result.next()) {
            Object[] row = new Object[columns];
            for (int j=0; j<= columns; j++) {
               row[j-1] = result.getString(j);
            }
            rowData.add(row);
         }
      }
   } catch (SQLexception e) {
      System.out.println(e);
   }
}

以及 SQLquery 类的简单 get 方法:

public List<Object> getRowData() {
   return rowData;
}

最佳答案

显然,你的getRowData()方法返回 List<Object>而它实际上包含数组。虽然这看起来很奇怪,因为你说它总是返回一个数组列表,但我假设这就是你所拥有的。

您需要一个循环来遍历这些“对象”,将它们向下转换为 Object[] ,并选取第一个成员。

Object[] sizes = new Object[sizeList.size()];
int i = 0;
for (Object o : sizeList) sizes[i++] = ((Object[]) o)[0];
return sizes;

关于java - 将 ArrayList<Object[]> 转换为 Object[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23152199/

相关文章:

C++ 字符串比较

C# 通过引用使用对象的方法

java - 如何使用贝塞尔曲线近似椭圆以填充给定的矩形?

java - 用 Java 解析 HTML 网页

javascript - 为什么/什么时候 $.inArray 返回 -1?

object - Tensorflow 对象检测限制

javascript - 将对象的值分组到新数组中 - JavaScript

java - 确定时间是满小时还是半小时

java - 什么时候使用 TreeSet 比 HashSet 更快?

javascript - jQuery .map 到数组中