gpt4 book ai didi

kotlin - Kotlin最有效的方式设置顺序

转载 作者:行者123 更新时间:2023-12-02 13:03:14 25 4
gpt4 key购买 nike

嗨,我有1330个对象的列表,想应用方法并获取结果集。

        val result = listOf1330
.asSequence()
.map {
someMethod(it)
}
val resultSet = result.toSet()

在没有toSet的情况下,它可以正常工作,但如果执行,则执行时间会长10倍左右。
我已经使用序列来使其更快地工作,但是结果是我需要没有重复的列表(设置)。

简单:将序列转换为set的最有效方法是什么?

最佳答案

 val result = listOf1330.mapTo(HashSet()) { someMethod(it) }

使用流或序列来实现转换的意义较小-您将需要集合中的所有元素,而不是几个。 mapTo(和 map)函数在Kotlin中是 inline。这意味着代码将被替换为调用站点,不会多次创建和执行lambda。我们使用 mapTo来避免由 toSet()函数完成的集合的第二个副本。

如果您想在多个线程中运行计算, .parallelStream()可能会提高性能。衡量线程之间的负载平衡情况仍然是一个好主意。性能可能取决于您将其称为集合实现类

关于kotlin - Kotlin最有效的方式设置顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55162315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com