【发布时间】:2019-04-10 03:02:31
【问题描述】:
所以我对 Kotlin 编程还很陌生,在学习教程时,我偶然发现了扩展函数这个话题。本教程提供了一个使用扩展函数(比如tripcon)一次连接三个字符串的示例,如下所示:
fun main() {
val str1="Three "
val str2="concantenated "
var str3="strings."
str3 = str3.tripcon(str1,str2)
println(str3)
}
fun String.tripcon(s1: String, s2: String) : String{
return s1 + s2 + this
}
上面的代码会给出正确的输出
Three concatenated strings.
但是,如果我将 tripcon() 函数修改为:
fun String.tripcon(s1: String, s2: String){
this= s1+s2+this
}
随后将 main() 函数的倒数第二行修改为:
str3.tripcon(str1,str2)
它会在行中显示 Variable expected 的错误:
this= s1+s2+this
所以我的问题是,是否可以在其中修改调用扩展函数的对象?或者还有其他选择吗?谢谢!
【问题讨论】:
标签: kotlin