Kotlino funkcija (su pavyzdžiu)

Šiame straipsnyje sužinosite apie funkcijas; kas yra funkcijos, jos sintaksė ir kaip sukurti vartotojo funkciją Kotline.

Programuojant funkcija yra susijusių sakinių grupė, atliekanti konkrečią užduotį.

Funkcijos naudojamos suskaidyti didelę programą į mažesnes ir modulines dalis. Pavyzdžiui, turite sukurti ir nuspalvinti apskritimą, remdamiesi vartotojo įvestimi. Norėdami išspręsti šią problemą, galite sukurti dvi funkcijas:

  • createCircle() Funkcija
  • colorCircle() Funkcija

Padalinus sudėtingą programą į mažesnius komponentus, mūsų programa tampa labiau organizuota ir valdoma.

Be to, taip išvengiama pasikartojimo ir kodas tampa pakartotinai naudojamas.

Funkcijų tipai

Priklausomai nuo to, ar funkciją nustato vartotojas, ar ji yra prieinama standartinėje bibliotekoje, yra dviejų tipų funkcijos:

  • Kotlino standartinės bibliotekos funkcija
  • Vartotojo nustatytos funkcijos

Kotlino standartinės bibliotekos funkcija

Standartinės bibliotekos funkcijos yra integruotos Kotlino funkcijos, kurias galima lengvai naudoti. Pavyzdžiui,

  • print() yra bibliotekos funkcija, kuri spausdina pranešimą į standartinį išvesties srautą (monitorių).
  • sqrt()grąžina skaičiaus ( Doublevertės) kvadratinę šaknį
 fun main(args: Array) ( var number = 5.5 print("Result = $(Math.sqrt(number))") )

Kai paleisite programą, išvestis bus:

 Rezultatas = 2.345207879911715

Čia yra nuoroda į Kotlino standartinę biblioteką, kurią galėsite ištirti.

Vartotojo nustatytos funkcijos

Kaip minėta, funkcijas galite susikurti patys. Tokios funkcijos vadinamos vartotojo apibrėžtomis funkcijomis.

Kaip sukurti vartotojo apibrėžtą funkciją „Kotlin“?

Kad galėtumėte naudoti (iškviesti) funkciją, turite ją apibrėžti.

Štai kaip galite apibrėžti „Kotlin“ funkciją:

 linksmas skambutis () (// funkcijos kūnas) 

Norėdami apibrėžti funkciją „Kotlin“, funnaudojamas raktinis žodis. Tada ateina funkcijos pavadinimas (identifikatorius). Čia funkcijos pavadinimas yra callMe.

Aukščiau pateiktoje programoje skliaustai ( )tušti. Tai reiškia, kad ši funkcija nepriima jokių argumentų. Apie argumentus sužinosite vėliau šiame straipsnyje.

Garbanotųjų petnešų kodai ( )yra funkcijos turinys.

Kaip iškviesti funkciją?

Norėdami paleisti kodus funkcijos korpuse, turite iškviesti funkciją. Štai kaip:

 paskambink man()

Šis sakinys iškviečia callMe()anksčiau deklaruotą funkciją.

Pavyzdys: paprastų funkcijų programa

 fun callMe() ( println("Printing from callMe() function.") println("This is cool (still printing from inside).") ) fun main(args: Array) ( callMe() println("Printing outside from callMe() function.") )

Kai paleisite programą, išvestis bus:

Spausdinimas iš callMe () funkcijos. Tai šaunu (vis dar spausdinama iš vidaus). Spausdinimas už funkcijos „callMe“ () ribų.

Ankstesnio callMe()kodo funkcija nepriima jokių argumentų.

Be to, funkcija negrąžina jokios vertės (grąžinimo tipas yra Unit).

Paimkime kitą funkcijos pavyzdį. Ši funkcija priims argumentus ir grąžins vertę.

Pavyzdys: naudodami funkciją pridėkite du skaičius

 fun addNumbers(n1: Double, n2: Double): Int ( val sum = n1 + n2 val sumInteger = sum.toInt() return sumInteger ) fun main(args: Array) ( val number1 = 12.2 val number2 = 3.4 val result: Int result = addNumbers(number1, number2) println("result = $result") )

Kai paleisite programą, išvestis bus:

 rezultatas = 15

Kaip veikia funkcijos su argumentais ir grąžinamąja verte?

Čia funkcijos iškvietimo metu funkcijai Doubleperduodami du argumentai number1 ir number2 addNumbers(). Šie argumentai vadinami tikraisiais argumentais.

 rezultatas = addNumbers (skaičius1, skaičius2)

Parametrai n1 ir n2 priima perduotus argumentus (funkcijos apibrėžime). Šie argumentai vadinami formaliais argumentais (arba parametrais).

In Kotlin, arguments are separated using commas. Also, the type of the formal argument must be explicitly typed.

Note that, the data type of actual and formal arguments should match, i.e., the data type of first actual argument should match the type of first formal argument. Similarly, the type of second actual argument must match the type of second formal argument and so on.

Here,

 return sumInteger

is the return statement. This code terminates the addNumbers() function, and control of the program jumps to the main() function.

In the program, sumInteger is returned from addNumbers() function. This value is assigned to the variable result.

Notice,

  • both sumInteger and result are of type Int.
  • the return type of the function is specified in the function definition.
     // return type is Int fun addNumbers(n1: Double, n2: Double): Int (… )

If the function doesn't return any value, its return type is Unit. It is optional to specify the return type in the function definition if the return type is Unit.

Example: Display Name by Using Function

 fun main(args: Array) ( println(getName("John", "Doe")) ) fun getName(firstName: String, lastName: String): String = "$firstName $lastName"

When you run the program, the output will be:

 John Doe

Here, the getName() function takes two String arguments, and returns a String.

You can omit the curly braces ( ) of the function body and specify the body after = symbol if the function returns a single expression (like above example).

It is optional to explicitly declare the return type in such case because the return type can be inferred by the compiler. In the above example, you can replace

 fun getName (firstName: String, lastName: String): String = "$ firstName $ lastName"

su

 fun getName (firstName: String, lastName: String) = "$ firstName $ lastName" 

Tai tik trumpas Kotlino funkcijų įvadas. Rekomenduojami straipsniai, susiję su funkcijomis:

  • Kotlin inline funkcijos
  • Kotlin infix funkcijos
  • Kotlino funkcijos apimtis
  • Kotlino numatytieji ir įvardyti argumentai
  • Kotlino rekursija
  • „Kotlin Tail Recursive“ funkcija
  • Kotlino išplėtimo funkcija
  • „Kotlin High-Order Functions & Lambdas“

Įdomios straipsniai...