扩展函数
- 新建一个kt文件BaseString
- 新建方法
fun String.lastChar() = this[length - 1]
- 代码调用 展示结果
fun main() {
println("Test".lastChar())
}
结果
t
根据这个可以定义我们自己想要的效果
比如:
package strings
fun String.lastChar() = this[length - 1]
fun String.lastCharUpper() = this.substring(0,length-1)+lastChar().toUpperCase()
代码调用
fun main() {
println("Test".lastChar())
println("Test".lastCharUpper())
}
结果
t
TesT
扩展属性
声明StringBuilder的扩展属性
var StringBuilder.firstChar: Char
get() = this[0]
set(value) {
setCharAt(0, value)
}
代码中调用
fun main() {
var s = StringBuilder("Test")
println(s.firstChar)
s.firstChar = 'B'
println(s)
}
结果
T
Best