therealbluepandabear
03/03/2021, 3:20 AMBrad M
03/03/2021, 3:36 AMone: Double, two: Double ->
therealbluepandabear
03/03/2021, 3:37 AMval charToString: (Array<Char>) -> Int = { array: Array<Char> ->
var result: String? = null
for (char in array) result += char
}
Brad M
03/03/2021, 3:39 AMtherealbluepandabear
03/03/2021, 3:39 AMBrad M
03/03/2021, 3:39 AMval charToString: (Array<Char>) -> Int = { array: Array<Char> ->
var result: String? = null
for (char in array) result += char
result
}
therealbluepandabear
03/03/2021, 3:39 AMBrad M
03/03/2021, 3:40 AMtherealbluepandabear
03/03/2021, 3:40 AMBrad M
03/03/2021, 3:42 AMfun add(a: Int, b: Int) = a + b
therealbluepandabear
03/03/2021, 3:46 AMBrad M
03/03/2021, 3:46 AMtherealbluepandabear
03/03/2021, 3:48 AMval charToString: (Array<Char>) -> String = {
var result = ""
result = it.forEach { char ->
result += char
}
}
gildor
03/03/2021, 3:50 AMtherealbluepandabear
03/03/2021, 3:50 AMgildor
03/03/2021, 3:51 AMarray.joinToString(separator = "")
therealbluepandabear
03/03/2021, 3:52 AMgildor
03/03/2021, 3:54 AMYou can still use return in a normal function, but not in a lambdaIt’s not exactly correct, lambdas can use return, but it must be return with label, which is quite convinient in some cases: https://kotlinlang.org/docs/returns.html#return-at-labels There area also implicit labels if you pass lambda to a function (but not in Tom’s example, which just a lambda assigned on property
therealbluepandabear
03/03/2021, 4:51 AMval charToStringCustomSeparator: (Array<Char>, String) -> String = { array: Array<Char>, separator: String -> array.joinToString(separator = separator) }
println(charToStringCustomSeparator(arrayOf('h', 'i'), "-"))
gildor
03/03/2021, 5:01 AMtherealbluepandabear
03/03/2021, 5:04 AMAlbert Chang
03/03/2021, 7:18 AMreturn
explicitly in lambdas, before you ask.