Give a method a function that decides the order.

Passing a Function

FunctionParameter.scala
object Main {
  def main(args: Array[String]): Unit = {
    val first = 
    val nums = List(first, 1, 2)
    val sorted = nums.sortWith((a, b) => a < b)
    val text = sorted.mkString(",")

    println("first=" + first)
    println("text=" + text)
  }
}
object Main {
  def main(args: Array[String]): Unit = {
    val first = 
    val nums = List(first, 1, 2)
    val sorted = nums.sortWith((a, b) => a < b)
    val text = sorted.mkString(",")

    println("first=" + first)
    println("text=" + text)
  }
}
object Main {
  def main(args: Array[String]): Unit = {
    val first = 
    val nums = List(first, 1, 2)
    val sorted = nums.sortWith((a, b) => a < b)
    val text = sorted.mkString(",")

    println("first=" + first)
    println("text=" + text)
  }
}
function-parameter A higher-order method takes a function as an argument. `sortWith` accepts a function that compares two elements and uses it to order the list.