【发布时间】:2021-01-11 04:36:03
【问题描述】:
我还是 kotlin 的新手,所以对我的问题持保留态度
所以我一直在学习 kotlin,在我阅读的一篇文章中,我以这段代码为例说明了如何使用 .toString
val sum1 = { a: Int, b: Int ->
val num = a + b
num.toString() //convert Integer to String
}
fun main(args: Array<String>) {
val result1 = sum1(2,3)
println("The sum of two numbers is: $result1")
}
输出:
The sum of two numbers is: 5
据我了解,它是“5”,但属于字符串类型.. 但是为什么呢??
我们可以简化代码并获得相同的结果:
val sum1 = { a: Int, b: Int -> a + b }
val result1 = sum1(2,3)
println("The sum of two numbers is: $result1")
输出:
The sum of two numbers is: 5
所以..我已经看到了如何使用它的示例,但我仍然没有找到任何东西来解释你为什么要使用它
【问题讨论】:
-
您不需要显式调用 toString,因为字符串模板会为您隐式调用它们,但是当您特别需要它作为字符串时会发生什么?比如“1”+0和1+0的区别,或者存储到字符串变量中,或者当你想把它作为字符串处理比如枚举每个字符等时
-
请注意,将
sum1的类型从(Int,Int) -> String更改为(Int,Int) -> Int。