如何利用Kotlin的MutableList构造器创建指定元素的自定义列表?
Kotlin MutableList生成自定义列表的正确方式
要生成指定的[4,6,7,9,10]可变列表,有几种直接的实现方式:
最简便的方法:直接使用
mutableListOf()
这是创建自定义元素可变列表的标准写法,无需借助带容量参数的构造器:val customMutableList = mutableListOf(4, 6, 7, 9, 10)如果一定要用带初始容量的构造器
可以先把自定义元素存入数组,再通过索引在lambda中取对应值:val targetElements = arrayOf(4, 6, 7, 9, 10) val customMutableList = MutableList(5) { targetElements[it] }从只读列表转成可变列表
你之前尝试的[4,6,7,9,10]是Kotlin的只读列表字面量,要转成可变列表只需调用.toMutableList():val customMutableList = listOf(4, 6, 7, 9, 10).toMutableList()
至于你之前用分号得到全10的列表,是因为lambda中多条语句用分号分隔时,最后一条语句的结果会作为整个lambda的返回值,比如{4;6;7;9;10}最终返回10,所以每个索引位置都会生成10。
内容的提问来源于stack exchange,提问作者Andy
相关产品推荐
相关产品推荐

