<分区>
最近我在一个必须为学校编写的 Java 程序中使用 arrayLists。我只是想知道; arrayList 是数组还是列表,或者两者兼而有之?
<分区>
最近我在一个必须为学校编写的 Java 程序中使用 arrayLists。我只是想知道; arrayList 是数组还是列表,或者两者兼而有之?
最佳答案
你问:
is an arrayList an array or a list, or both?
它是一个通过继承的List,它由一个数组组成。
它实现了 java.util.List<T>
接口(interface),因此通过了“is-a”测试。这意味着您可以用 List 做的任何事情,包括调用所有 List 公共(public)方法,您都可以用 ArrayList 做。
然而,它的数据模型由一个数组支持,因此它包含一个按组合排列的数组。所以这意味着虽然它有一些从底层数组获得的类似数组的行为,但你不能直接调用数组方法或获取数组字段。例如,您不能使用数组索引从 ArrayList 中获取项目。即,这行不通:myArrayList[i]
, 但您可以通过 ArrayList 的 get(int i)
间接调用它方法。而且你也得不到 length
它的字段,但您可以从其 size()
间接获取它方法。另请注意,从 ArrayList 获取数据将遵循与数组相同的限制大 O 行为。
关于java - Java中的arrayList是数组还是列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21463906/