【发布时间】:2013-09-21 04:49:12
【问题描述】:
如何访问 Arraylist 中的 Integer Array,两者都是可调整大小的?
到目前为止我有这个代码:
List<Integer[]> vertices_passed = new ArrayList<Integer[]>();
我想进入 vertices_passed 并向 Integer 数组添加一个元素。
类似这样的:
vertices_passed.get(certain_index).set(index_of_integer_array, Integer.valueof(9))
有没有更好的方法来使用 ArrayLists 创建如下所示的数据结构:
ArrayList {
[0]
[0] A
[1] B
[1]
[0] A
[1] C
[2] F
[3] G
[2]
[0] D
[1] C
[2] F
[3] G
[4] H
[3]
[0] A
[0] D
[0] I
另外,如何向内部数组添加元素?
谢谢
【问题讨论】:
-
你为什么不用
ArrayList<ArrayList<Integer>>? -
@CommuSoft 你的意思是
List<List<Integer>>由ArrayList<List<Integer>>支持,它将包含ArrayList<Integer>。 -
确实,但是
ArrayList<ArrayList<Integer>>没有任何问题,它只是对使用的类型施加了更多限制。也可以使用ArrayList<LinkedList<Integer>> -
这完全取决于您需要如何访问数据,是否始终需要读取所有元素,或者您是否知道数据将始终进行排序并且您不需要添加内部条目的任何更多元素都可以,否则您可以考虑 ArrayList
> 或 Map > -
既然问题说明了添加元素,
LinkedList可以在恒定时间最坏情况下执行此操作,而ArrayList可能需要线性时间最坏情况。
标签: java arrays multidimensional-array arraylist integer