-3

将 Java ArrayList 转换为 Object[][] 的最简单方法是什么?
例如:

List<MyClass> myList = new ArrayList<MyClass>();
myList.add(myObj1);
myList.add(myObj2);

Object[][] objArray = myList.... How do I convert?

我尝试这样做的原因是使用 DBUtils 的 QueryRunner.batch(String sql, Object[][] params) 方法。

编辑:有关详细信息,请参见此处: DBUtils QueryRunner.batch()

EDIT2:
我会尝试提供更多信息。

public class MyObj
{
    int myInt;
    String myString;
}

MyObj obj1 = new MyObj(1, "test1");
MyObj obj2 = new MyObj(2, "test2");

List<MyObj> myList = new ArrayList<MyObj>();
myList.add(obj1);
myList.add(obj2);

Object[] onedArray = myList.toArray();  // Now I have a 1d array of my list of objects.
Object[] objArray = myList.get(0); // How do I convert each object instance into an array of Objects?

// Intended result would be something like this:
new Object[][] { { 1, "test1" }, { 2, "test2" } };

EDIT3:一种可能的解决方案是:我可以向 MyObj 类添加一个 toObjectArray() 方法。肯定有更好的方法吗?

    public Object[] toObjectArray()
    {
        Object[] result = new Object[2];
        result[0] = this.myInt;
        result[1] = this.myString;
        return result;
    }

谢谢。

4

1 回答 1

1

Arraylist 是一维集合,因为它在内部使用一维数组。您不能将一维数组转换为二维数组。

如果您想要将一维数组转换为二维数组,您可能需要添加更多信息。

于 2013-08-10T01:56:25.203 回答