在 Kotlin 中制作可变大小的不可变列表

Making variable sized immutable list in Kotlin

我尝试在 Kotlin 中制作一个可变大小的不可变列表,但我找到的唯一方法就是这个。没有更干净的方法吗?

val size = nextInt(0, 50)
val list = mutableListOf<Post>()
for (i in 0..size) {
    list.add(getRandomPost())
}
val immutableList = Collections.unmodifiableList(list)

当我的来源是另一个列表(随机大小)时,我可以做 val immutableList = otherList.map{ /* thing that will be add() */ } 但没有发现任何与 integrer

相似的东西

您可以受益于 kotlin 集合扩展并使用 List 构建器

val list: List<Post> = List(Random.nextInt(0, 50)) {
      getRandomPost()
}