将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;
}
感谢。
答案 0 :(得分:1)
Arraylist是一个单维集合,因为它内部使用单维数组。您无法将单维数组转换为二维数组。
如果您想要将1D转换为2D阵列,可能需要添加更多信息。