MutableList映射扩展功能输出不可变的List

时间:2018-11-05 19:10:21

标签: kotlin

我想将MutableList中的所有项目映射到其他项目:

(0..10).toMutableList().map { 1 }

我所追求的只是List

(0..10).toMutableList().map { 1 }.toMutableList() //ok

是否有任何mapMutable方法?也许这是错误的?

2 个答案:

答案 0 :(得分:0)

mapTo,可让您指定将值映射到的位置:

val origList = (0..10).toMutableList()
val mappedList = origList.mapTo(mutableListOf()) { 1 }

答案 1 :(得分:0)

由于map返回List而不是MutableList,因此您有2个选择:

val list = (0..10).map { 1 }.toMutableList()

val list: MutableList<Int> = mutableListOf()
(0..10).mapTo(list) { 1 }