You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中创建包含3个相同元素的列表的方法咨询

Kotlin中创建包含3个相同元素的列表的方法咨询

嘿,我懂你不想重复写三次相同代码的心情!你遇到的问题确实是因为repeat函数返回的是Unit,没法直接放进listOf里当作元素。这里有几个更简洁的写法可以实现你的需求:

  • 使用List构造函数(最推荐)
    Kotlin的List自带了一个实用的构造方法,直接指定要创建的元素数量,再用lambda提供每个元素的生成逻辑就行,完全贴合你的场景:

    List(3) { Item("abc", 123) }
    

    这个lambda会被调用3次,每次返回一个新的Item实例,最终生成正好包含3个目标元素的列表。

  • 用generateSequence生成序列再转列表
    如果你习惯用序列相关的API,也可以试试这种写法:

    generateSequence { Item("abc", 123) }
        .take(3)
        .toList()
    

    generateSequence会持续生成你指定的元素,take(3)截取前3个,最后调用toList()就转换成我们需要的列表啦。

  • 重复单个元素(适合不可变对象场景)
    要是你的Item是不可变的,不需要每次都创建新实例,也可以先创建一个实例再重复放入列表:

    val item = Item("abc", 123)
    listOf(item, item, item)
    

    这种写法比你原来的代码少重复了两次构造函数调用,适合元素可以复用的情况。

备注:内容来源于stack exchange,提问作者me.at.coding

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 12:39:32