Kotlin 1.4中新的sumOf()
函数与sumBy()
或sumByDouble()
函数有何不同?
最佳答案
TLDR :没什么区别,最终可以弃用sumBy
/sumByDouble
,而使用单个sumOf
。sumOf
操作具有从选择器函数返回的不同数字类型的重载。使用旧的类型推断工具以前是不可能做到的,因此,为了处理不同的数字类型,需要具有不同名称的函数:sumBy
求和int,sumByDouble
求对 double 。
当新推论最终得到选择器lambda返回类型的重载解析的实验支持时,我们决定不重载现有的sumBy
函数,而是引入一个新的操作sumOf
。这样,它破坏某些内容的机会就更少,并且在使用新操作list.minOf/maxOf { selector }
命名时更加一致。
关于kotlin - Kotlin 1.4中的sumOf()和sumBy()有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62829645/