How to apply a callback to an array (apply a function to each element) in Kotlin

2 Answers

0 votes
// Using map
 
fun double(x: Int): Int = x * 2
 
fun main() {
    val numbers = arrayOf(5, 10, 15, 20)
 
    // Apply the callback to each element
    val doubled = numbers.map(::double)
    
    // returns a new list, leaving the original array unchanged.
 
    println(doubled)   
}
 
 
/*
run:
 
[10, 20, 30, 40]
 
*/
 

 



answered Mar 21 by avibootz
0 votes
// Using an inline lambda callback

fun main() {
    val numbers = arrayOf(5, 10, 15, 20)

    val tripled = numbers.map { x -> x * 3 } // expressive

    println(tripled)  
}



/*
run:

[15, 30, 45, 60]

*/

 



answered Mar 21 by avibootz
...