kotlin - 中辍函数

在 Kotlin 中自定义一个 infix 中辍函数

infix fun Int.vs(num: Int): String {
    return when {
        this - num > 0 -> "大于"
        this - num < 0 -> "小于"
        else -> "等于"
    }
}

使用方法:

fun main(args: Array) {
    println(5 vs 6)
}

结果:大于
中辍函数跟扩展函数有什么区别了?

扩展方法,其实就是在现有的类上进行扩展,实现自己想要的函数,结果可以是本身或者其他任何类。
中辍函数,也是在现有的类上进行扩展,但是函数的调用,只能是前后两个类似的对象,才可以声明。

你可能感兴趣的:(kotlin - 中辍函数)