能否请您建议如何以最佳方式将ArrayLists的ArrayList转换为Java中的简单2d数组?例如。我有
ArrayList<ArrayList<String>> data = ...;
并且想要反对:
String[][] converted = ?;
非常感谢!
答案 0 :(得分:3)
你可以这样做:
String[][] converted = new String[data.size()][];
for (int i = 0; i < data.size(); i++) {
converted[i] = data.get(i).toArray(new String[data.get(i).size()]);
}
答案 1 :(得分:1)
首先想到的是(假设所有二维ArrayLists都是相同的大小):
ArrayList<ArrayList<String>> data = ...;
String[][] converted = new String[data.size()][data.get(0).size()];
for (int i = 0; i < data.size(); i++)
converted[i] = data.get(i).toArray(new String[data.get(i).size()]);
答案 2 :(得分:0)
http://docs.oracle.com/javase/1.5.0/docs/api/java/util/ArrayList.html
循环遍历数据内容,然后调用data.get(someIndex).toArray()并将其分配给转换后的[someIndex]
答案 3 :(得分:0)
String[][] converted = new String[data.size()][];
for (int i = 0; i < data.size(); i++) {
converted[i] = data.get(i).toArray(new String[0]);
}