Chapter 4. Scala Collections
In the previous chapter, we covered functional programming with Scala and how object-oriented and functional approaches complete each other. We also covered generic classes, which are often used with pattern matching. Finally, we covered how to create user-defined pattern matching and why it is useful.
In this chapter, we will cover the Scala Collection library. We will start by learning how to work with lists, which will make us familiar with some design principles of the whole collections library. Afterward, we'll generalize to sequences and cover some more relevant data structures. At the end, we'll look at how collections relate to monads and how we can use that knowledge to make some powerful abstractions in our code.
Scala's collection library is very rich, being comprised of data structures for very different use cases and performance considerations. It is particularly rich in immutable data structures, which we will be covering...