在Kotlin ,你可以这样做:
val s: String = "Hey"
println(s[1])
或者简单地说:
println("Hey"[1])
你会打印e
张.
但是如果你想把这种行为扩展到你自己的类呢?要实现这种语法,需要实现什么接口?
我看了String
的超型,只发现了Comparable<String>
和CharSequence
,它们本身都没有任何其他超型,所以我的探索提前结束了.
例如,在Python中,通过在一个类中定义一个名为__getitem__
的方法,可以赋予该类的对象与方括号语法一起使用的能力,如a[i]
;我想知道这在Kotlin 怎么可能.
提前谢谢.