gpt4 book ai didi

kotlin - 为什么 sumBy(selector) 不返回 Long?

转载 作者:IT老高 更新时间:2023-10-28 13:39:25 26 4
gpt4 key购买 nike

sumBy(selector)返回整数

sumByDouble(selector)返回双倍

为什么 sumBy 不返回 Long?有解决办法吗?

最佳答案

这是 Kotlin 团队做出的决定。因为它是 not possible to have return type overloads in Java sumBy* 必须根据返回类型具有不同的名称。

添加您自己的 sumByLong 很容易:

inline fun <T> Iterable<T>.sumByLong(selector: (T) -> Long): Long {
var sum = 0L
for (element in this) {
sum += selector(element)
}
return sum
}

关于kotlin - 为什么 sumBy(selector) 不返回 Long?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37537049/

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