是否可以在Kotlin中添加运算符重载扩展功能?

时间:2019-05-01 18:16:21

标签: kotlin kotlin-extension

我的意思是这样的:

fun operator Table.get(column_name: String) = this.column(column_name)
// Currently gives an error: "Expecting a top level declaration"

Table实例当前的工作方式如下:table.column("column_name")

我想像这样工作:table["column_name"]

1 个答案:

答案 0 :(得分:4)

这是可能的,只是operator关键字在声明中的fun关键字之前(其他修饰符,例如infixinline,等)

operator fun Table.get(column_name: String) = this.column(column_name)