Code
scala
val nums = (1 to 10).toList
// map / filter
val doubled = nums.map(_ * 2)
val evens = nums.filter(_ % 2 == 0)
// fold / reduce
val sum = nums.foldLeft(0)(_ + _)
val product = nums.reduce(_ * _)
// groupBy
val grouped = nums.groupBy(_ % 3)
// Map(0 -> List(3,6,9), 1 -> List(1,4,7,10), 2 -> List(2,5,8))
// flatMap / flatten
val nested = List(List(1,2), List(3,4))
nested.flatten // List(1,2,3,4)
nested.flatMap(_.map(_ * 10)) // List(10,20,30,40)