Useful Links
Computer Science
Programming
By Language
Scala Programming
1. Introduction to Scala
2. Scala Language Fundamentals
3. Object-Oriented Programming in Scala
4. Functional Programming in Scala
5. The Scala Collections Library
6. Advanced Language Features
7. Concurrency and Parallelism
8. Tooling and Ecosystem
9. Advanced Topics
10. Practical Applications
11. Best Practices and Idioms
The Scala Collections Library
Overview of the Collections Hierarchy
Traversable
Iterable
Collection Traits and Abstract Classes
Immutable vs Mutable Collections
scala.collection.immutable Package
scala.collection.mutable Package
Choosing Between Immutable and Mutable
Key Collection Types
Sequences
List
Vector
Array
ArrayBuffer
Range
Sets
Set
HashSet
TreeSet
Mutable and Immutable Sets
Maps
Map
HashMap
TreeMap
Mutable and Immutable Maps
Queues
Queue
Mutable and Immutable Queues
Stacks
Stack
Mutable and Immutable Stacks
Lazy Collections
LazyList
Common Collection Operations
Transformation Operations
map
flatMap
filter
collect
partition
Iteration Operations
foreach
iterator
Aggregation Operations
foldLeft
foldRight
reduce
scan
aggregate
Grouping and Sorting
groupBy
sortBy
sortWith
sorted
Zipping and Unzipping
zip
zipWithIndex
unzip
Accessing Elements
head
tail
last
init
apply
headOption
lastOption
Searching and Testing
find
exists
forall
contains
count
Combining Collections
concat
union
intersect
diff
Working with Views
Creating Views
Lazy Evaluation with Views
Performance Considerations
Collection Performance Characteristics
Time Complexity of Operations
Memory Usage Considerations
Choosing the Right Collection Type
Previous
4. Functional Programming in Scala
Go to top
Next
6. Advanced Language Features