数组的性能。asList

2022-09-01 13:03:51

使用 Arrays.asList 转换静态对象数组的开销是多少?假设对象数组有 N 个项目,它是否只是一个 O(N) 算法,其中所有项目都是通过引用复制的,还是它只是一个外观,其中原始数组位于 List 外观后面?


答案 1

它很便宜,O(1)。正如您所怀疑的那样,该列表只是数组周围的包装器。Java API 文档证实了这一点:

返回由指定数组支持的固定大小的列表。(对返回列表的更改“直写”到数组。


答案 2

推荐