O'Reilly logo

Scala Functional Programming Patterns by Atul S. Khot

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Sorting it out!

Scala provides sorted, sortBy and sortWith methods. We will take a quick look at them and then tackle an interesting memoization problem.

Sorted

The sorted method uses natural ordering amongst the elements of the collection. Natural ordering well, seems natural.

For example, given the following numbers:

1, 11, 22, 2

The natural ordering would be:

1, 2, 11, 22

And the alphanumeric ordering would be:

1, 11, 2, 22

Alternatively, please see http://blog.codinghorror.com/sorting-for-humans-natural-sort-order/ for more on natural ordering.

Here is sorted in action:

scala> import scala.util.Random
import scala.util.Random
scala> val list = List.fill(10)(Random.nextInt(100))
list: List[Int] = List(5, 49, 37, 56, 54, 64, 9, 85, 76, 28)
scala> list.sorted ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required