În acest articol, veți învăța să utilizați notația infix pentru a apela o funcție în Kotlin (cu ajutorul exemplelor).
Înainte de a afla cum să creați o funcție cu notare infix, să explorăm două funcții infix utilizate în mod obișnuit.
Când utilizați ||
și &&
operații, compilatorul caută sau respectiv și și funcționează și le apelează sub capotă.
Aceste două funcții acceptă notația infix.
Exemplu: Kotlin sau & și funcție
fun main(args: Array) ( val a = true val b = false var result: Boolean result = a or b // a.or(b) println("result = $result") result = a and b // a.and(b) println("result = $result") )
Când rulați programul, ieșirea va fi:
rezultat = adevărat rezultat = fals
În programul de mai sus, a or b
în loc de a.or(b)
, și a and b
în loc de a.and(b)
este utilizat. A fost posibil, deoarece aceste două funcții acceptă notația infix.
Cum se creează o funcție cu notație infix?
Puteți efectua un apel de funcție în Kotlin folosind notația infix dacă funcția
- este o funcție membru (sau o funcție de extensie).
- are un singur parametru unic.
- este marcat cu
infix
cuvânt cheie.
Exemplu: Funcție definită de utilizator cu notare Infix
class Structure() ( infix fun createPyramid(rows: Int) ( var k = 0 for (i in 1… rows) ( k = 0 for (space in 1… rows-i) ( print(" ") ) while (k != 2*i-1) ( print("* ") ++k ) println() ) ) ) fun main(args: Array) ( val p = Structure() p createPyramid 4 // p.createPyramid(4) )
Când rulați programul, ieșirea va fi:
* * * * * * * * * * * * * * * *
Iată createPyramid()
o funcție infix care creează o structură piramidală. Este o funcție membru a clasei Structure
, ia un singur parametru de tip Int
și începe cu cuvântul cheie infix
.
Numărul de rânduri ale piramidei depinde de argumentul transmis funcției.