kotlin - Kotlin 如何存储列表的数据?
问题描述
我想知道 Kotlin 如何将数据存储在列表中。我已经阅读了函数listOf
和接口的源代码List
,但我一直无法找到数据的存储位置。例如val list = listOf(1,2,3)
. 用什么样的存储方式来存储这三个数字?
感谢您的阅读。
解决方案
如果你遵循调用链,listOf(vararg elements: T)
在 JVM 调用上Arrays.asList(elements)
,它看起来像:
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
这不是常用的Java ArrayList,而是一个同名的私有类。但就像公共 ArrayList 一样,项目存储在支持对象数组中。在这种情况下,vararg
Object 数组直接用作后备数组,因此没有多余的复制或分配。源代码可以在这里查看。
推荐阅读
- c# - 如何向 Microsoft.Extensions.Logging 事件添加横切信息?
- android - MPAndroid图表中的自定义x轴标签
- javascript - 如何使用 Javascript 和 Axios formdata 上传多个图像/文件
- android - 带有 Viewpager 的 Gridview 画廊和捏缩放
- c# - Windows 服务上的 C# HttpWebRequest:更改请求中的任何属性都不会产生效果
- scala - Spark Scala使用(1和0)生成随机RDD?
- docker - 自动将主机 IP 设置为 docker 中的环境属性
- json - 如何在 Python 3 中一个一个地读取一个巨大的 JSON 文件?
- hive - Hive 查询优化设置——什么时候不使用?
- excel - 为列中的单元格值更改创建日志历史记录