Photo by Shahadat Rahman on Unsplash

Kotlin Higher Order Functions

Part 1

Kalaiselvan
1 min readAug 14, 2020

--

Just snippets

Extension function:

fun String.toPrefixDollar(): String {
return "$$this"
}

Usage:

val amount = "100".toPrefixDollar()
println(amount)

Functions:

F1

fun doSomething(block: () -> Unit) {
block()
}

Usage:

doSomething {
println("Hello, I am the block sent to lambda")
}
// or
doSomething(::block)
fun block() {
println("Hello, I am the block sent to lambda")
}

F2

fun doSomethingAndPrintResult(block: () -> Int) {
val result = block() * 2 // its provide multiple of 2
println
(result)
}

Usage:

doSomethingAndPrintResult {
2
}

F3

fun doSomethingAndReturnResult(block: () -> Int) : Int {
val result = block() * 2 // its provide multiple of 2
return result
}

Usage:

val result = doSomethingAndReturnResult { 4 }
println(result)

F4

fun takeInSomethingAndPrintResult(squawk: Int, block: (code: Int) -> Int) {
val result = 2 * block(squawk)
println(result) // prints 15002
}

Usage:

takeInSomethingAndPrintResult(7500) { code ->
add(code)
}
val add = { i: Int -> i + 1 }

--

--

Kalaiselvan

Mobile application engineer| Android tutor| Aviation Enthusiasts