阵列的好处
在我看来,列表相对于数组的优势非常明显:
- 泛型提供更精确的键入:。
List<Integer>, List<? extends Number>, List<? super Integer>
- List 接口有一堆有用的方法:等。对于数组,除了 get/set 之外的所有标准操作都必须通过将其传递给静态方法以过程方式执行。
addAll
remove
- 集合提供不同的实现,如 、、不可修改和同步列表,这些列表可以隐藏在通用 List 接口下。
ArrayList
LinkedList
- OOB 长度控制。
作为缺点,我只能提到没有语法糖和运行时类型检查。同时,支持这两种结构需要频繁使用 和 方法,这使得代码的可读性降低。因此,我很好奇使用数组是否有任何我错过的重要好处。asList
toArray