java - Java中的arrayList是数组还是列表?

标签 java arrays list 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/

相关文章:

javascript - 未处理的异常类型 ScriptException

java JTable 如何跟踪行

java - 需要一个简单的 CMS。我应该定制现有的 CMS 还是从头开始构建?

javascript - 如何在 Javascript 中用数组对象的值中的其他子字符串替换子字符串?

python - 在 python 中使用 id() 比较列表(整数)

java - 使用字符串选择 Eclipse 工作集

java - 如何在java中使用随机数组和计时器?

c# - c#中set和set all的区别

list - Haskell IO 创建一个字符串列表并显示它

python - 将 float 组复制到字符串数组