这是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
}