V tomto článku se naučíte používat infixovou notaci k volání funkce v Kotlinu (pomocí příkladů).
Než se naučíte, jak vytvořit funkci, která má notaci infix, prozkoumáme dvě běžně používané funkce infix.
Když používáte ||a &&operace, kompilátor vyhledá nebo a a funkce, a zavolá je pod kapotou.
Tyto dvě funkce podporují notaci infix.
Příklad: Kotlin nebo & a funkce
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") )
Když spustíte program, výstup bude:
result = true result = false
Ve výše uvedeném programu, a or bmísto toho a.or(b), a a and bmísto toho a.and(b)se použije. Bylo to možné, protože tyto dvě funkce podporují infixovou notaci.
Jak vytvořit funkci s infixovou notací?
Můžete zavolat funkci v Kotlin pomocí infixové notace, pokud je funkce
- je členská funkce (nebo rozšiřující funkce).
- má pouze jeden jediný parametr.
- je označen
infixklíčovým slovem.
Příklad: Uživatelem definovaná funkce s Infix Notation
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) )
Když spustíte program, výstup bude:
* * * * * * * * * * * * * * * *
Zde createPyramid()je funkce infix, která vytváří pyramidovou strukturu. Je to členská funkce třídy Structure, trvá pouze jeden parametr typu Inta začíná klíčovým slovem infix.
Počet řádků pyramidy závisí na argumentu předaném funkci.








