KOTLIN somo la 14: Aina za function kwenye Kotlin
Katika somo hili tutakwenda kuingia ndani zaidi kwenye somo la function. Hapa tutakwenda kuona aina za function.
Aina kuu mbii za function:
Function unaweza kuziweka kwenye makundi makuu mawili ambayo ni:
- User defined function:
Hizi ni zile ambazo unazitengeneza mwenyewe. Kama tulivyoona somo lililopita jinsi ya kutengeneza function.
- Built in function
Hizi ni zile ambazo zimekuja na lugha yenyewe. Mfano function ya ku print text print() na nyinginezo ambazo zipo ila hujazitengeneza wewe.
Aina za function ya kuangalia parameter na return type:
Kawakuwa tumesha jifunza mengi kuhusu function na parameter sasa hapa nakwend akukuletea aina za function ambazo zipo:
Aina za function
- Function ambazo hazina parameter wala return
Mfano:
fun salamu() {
print("habari ya muda huu ")
}
fun main() {
salamu()
}
- Function zenye parameter ila hazina return
Mfano:
fun jumlisha(x: Int, y: Int) {
println(x + y)
}
fun main() {
jumlisha(4, 9)
}
- Function zenye return ila hazima parameter
fun jumlisha(): Int {
val x = 4
val y = 6
return x + y
}
fun main() {
print(jumlisha())
}
- Function ambazo zina parameter na return
fun eneo(ur: Int, up: Int): Int {
return ur * up
}
fun main() {
print(eneo(6, 8))
}
Function ambayo haina jina
Tulishaona kuwa function inatakiwa iwe na jina. Sasa kuna function ambayo yenyewe haina jina ila inaweza kubeba parameter. Function hii inatambulika kama anonymous function nameless function. Yenyewe inaweza kuwa katika mtindo huu:-
(parameter){
Code
}
Mfano:
fun main() {
val jumlisha = fun(x: Int, y: Int): Int {
return x + y
}
println(jumlisha(4, 6))
}
Ukiangalia hapo utaona kuwa function yetu haina jina, lakini tumeweza kuitumia kwa kutumia variable.
Lambda function
Huu ni mfuo wa kuandika function kwa ufupi kw akutumia arrow yaani mshale ( -> ) function hii huitwa arrow function wacha tuone mfano hapo chini.
Lambda ambayo haina jina:
fun main() {
val jumlisha: (Int, Int) -> Int = { x, y -> x + y }
println(jumlisha(4, 6))
}
Hapo utapata jibu 10.
fun main() {
val salamu: () -> Unit = {
print("salamu sana Mteja")
}
salamu()
}
Tunakwenda kutengeneza program kwa ajili ya kubadili mita kuwa kilopita.
Kanuni za kihesabu zinasema kilomita moja ni sawa na mita 1000. Hiyo ili tubadili mita kuwa kilomita itatubidi tugawanye kwa 1000.
fun badili(mita: Double): Double {
return mita / 1000
}
fun main() {
println("andika Mita")
val mita = readLine()?.toDoubleOrNull() ?: 0.0
if (mita != null) {
println(badili(mita))
} else {
println("weka namba")
}
}
...
Umeionaje Makala hii.. ?
Share On:
👉1 Sira ya Mtume Muhammad (s.a.w) 👉2 kitabu cha Simulizi 👉3 Tafasiri ya Riyadh Swalihina 👉4 Simulizi za Hadithi Audio 👉5 Kitabu cha Afya 👉6 Madrasa kiganjani
Post zinazofanana:
KOTLIN somo la 11:Jinsi ya kutumia break na continue kwenye loop
Katika somo hili utakwenda kujifunza kuhusu break na continue kwenye Kotlin loop za for loop na while loop.
Soma Zaidi...KOTLIN somo la 4: Aina za Data kwenye Kotlin
Katika somo hili utakwenda kujifunza kuhusu aina za data zinazotumika kwenye Kotlin.
Soma Zaidi...KOTLIN somo la 16:baadhi ya method na properies zinazofanya kazi kwenye string
Katika somo hili tutajifunza kuhusu method za String zinazotumika kwenye Kotlin.
Soma Zaidi...KOTLIN somo la 7: Jinsi ya kutumia If na ifelse kwenye Kotlin
Katika somo hili utakwenda kujifunza kuhusu namna ambavyo program inaweza kufanya maamuzi kulingana na mashart fulani.ama namna ambavyo program inaweza ku run code zaii ya mara moja kulingana na mashart. Hapa tutazingumzia flow of control statement
Soma Zaidi...HOTLIN somo la 9: Jinsi ya kutumia for loop
Katika somo hli utakwend akujifunza kuhusu loop kwenye kOTLIN. Loop zimegawanyika katika makundi mnne ambayo ni for loop, while loop, for in loop na do while loop.
Soma Zaidi...Kotlin Somo la 28: Abstraction na Interfaces
Somo hili linaelezea dhana ya abstraction na interfaces katika Kotlin — namna zinavyosaidia kuficha undani wa utekelezaji na kuweka miongozo ya kazi. Tutafahamu tofauti kati ya abstract class na interface, na tutaandika mifano halisi ya kila moja.
Soma Zaidi...