原文: https://www.programiz.com/kotlin-programming/infix-notation
在本文中,您将学习使用int表示法在 Kotlin 中调用函数(借助示例)。
在学习如何创建具有中缀表示法的函数之前,让我们探索两个常用的中缀函数。
当您使用||和&&操作时,编译器分别查找或和和函数,并在后台进行调用。
这两个函数支持中缀表示法。
示例:Kotlin or和and函数
fun main(args: Array<String>) {val a = trueval b = falsevar result: Booleanresult = a or b // a.or(b)println("result = $result")result = a and b // a.and(b)println("result = $result")}
运行该程序时,输出为:
result = trueresult = false
在上述程序中,使用a or b代替a.or(b),并使用a and b代替a.and(b)。 这是可能的,因为这两个函数都支持中缀表示法。
如何创建带有中缀符号的函数?
您可以使用中缀符号在 Kotlin 中进行函数调用(如果该函数
- 是成员函数(或扩展函数)。
- 只有一个参数。
- 用
infix关键字标记。
示例:带中缀符号的用户定义函数
class Structure() {infix fun createPyramid(rows: Int) {var k = 0for (i in 1..rows) {k = 0for (space in 1..rows-i) {print(" ")}while (k != 2*i-1) {print("* ")++k}println()}}}fun main(args: Array<String>) {val p = Structure()p createPyramid 4 // p.createPyramid(4)}
运行该程序时,输出为:
** * ** * * * ** * * * * * *
在此,createPyramid()是创建金字塔结构的中缀函数。 它是类Structure的成员函数,仅接受类型为Int的一个参数,并以关键字infix开头。
吡喃酰胺的行数取决于传递给函数的参数。
