美文网首页
Kotlin 中缀表达式

Kotlin 中缀表达式

作者: 景知育德 | 来源:发表于2021-07-04 19:08 被阅读0次

    扩展函数

    假如有一个类,具有若干个字段(属性)和方法。
    但是我们想给它添加新的方法,这就可以使用扩展函数了。
    扩展函数不会修改类本身的结构。

    譬如我现在想给List<Number>类添加方法secondElem(),可以这样:

    fun List<Number>.secondElem(): Number? {
        return if (this.size < 2) null else this[1]
    }
    

    用以输出一个List<Number>实例中的第二个元素。

    中缀表达式

    中缀表达式的语法是在扩展函数的基础上的。它需要在函数前面加上infix修饰。

    infix fun Int.mod(that:Int):Int {
        return this % that
    }
    

    中缀表达式在调用时可以不加括号:

    fun main() {
        println(17 mod 5)
    }
    

    直接17 mod 5就可以了。

    中缀表达式的要求:

    • 中缀表达式必须是扩展函数方法
    • 中缀表达式只能有一个参数
    • 中缀表达式的参数不能有默认值(否则参数可能为空);
    • 中缀表达式的参数不能是可变参数(否则参数可能不止一个)。

    相关文章

      网友评论

          本文标题:Kotlin 中缀表达式

          本文链接:https://www.haomeiwen.com/subject/eukvultx.html