Java阵列 - 它们是什么

use*_*506 2 java arrays

从查看Java Collections API,我看到数组不被视为集合.如果不是被认为是什么阵列?

Jon*_*eet 10

数组在Java中是"特殊的" - 它们不实现任何接口,这意味着它们无法实现集合接口.它们是"自然语言"术语中的集合,您可以使用增强型for循环 - 但如果您想在集合API中使用数组,则需要Arrays.asList使用List<T>接口包装数组.(结果只是数组的视图 - 通过列表可以看到对数组的更改,反之亦然.)

(这与.NET相反,其中T[]实现IList<T>等)

  • 请注意,您可以通过List更改元素,但无法向其中添加新元素,因为后备阵列无法增长.如果你尝试,你会得到一个运行时错误. (4认同)