Packages
- package root
This is the documentation for the Scala standard library.
Definition ClassesrootThis is the documentation for the Scala standard library.
Package structure
The scala package contains core types like Int, Float, Array or Option which are accessible in all Scala compilation units without explicit qualification or imports.
Notable packages include:
- scala.collection and its sub-packages contain Scala's collections framework
- scala.collection.immutable - Immutable, sequential data-structures such as Vector, List, Range, HashMap or HashSet
- scala.collection.mutable - Mutable, sequential data-structures such as ArrayBuffer, StringBuilder, HashMap or HashSet
- scala.collection.concurrent - Mutable, concurrent data-structures such as TrieMap
- scala.concurrent - Primitives for concurrent programming such as Futures and Promises
- scala.io - Input and output operations
- scala.math - Basic math functions and additional numeric types like BigInt and BigDecimal
- scala.sys - Interaction with other processes and the operating system
- scala.util.matching - Regular expressions
Other packages exist. See the complete list on the right.
Additional parts of the standard library are shipped as separate libraries. These include:
- scala.reflect - Scala's reflection API (scala-reflect.jar)
- scala.xml - XML parsing, manipulation, and serialization (scala-xml.jar)
- scala.collection.parallel - Parallel collections (scala-parallel-collections.jar)
- scala.util.parsing - Parser combinators (scala-parser-combinators.jar)
- scala.swing - A convenient wrapper around Java's GUI framework called Swing (scala-swing.jar)
Automatic imports
Identifiers in the scala package and the scala.Predef object are always in scope by default.
Some of these identifiers are type aliases provided as shortcuts to commonly used classes. For example, List is an alias for scala.collection.immutable.List.
Other aliases refer to classes provided by the underlying platform. For example, on the JVM, String is an alias for java.lang.String.
- scala.collection and its sub-packages contain Scala's collections framework
- package scala
Core Scala types.
Definition ClassesrootCore Scala types. They are always available without an explicit import.
- package collectionDefinition Classesscala
- package immutableDefinition Classescollection
- ::
- AbstractMap
- AbstractSeq
- AbstractSet
- ArraySeq
- BitSet
- HashMap
- HashSet
- IndexedSeq
- IndexedSeqDefaults
- IndexedSeqOps
- IntMap
- Iterable
- LazyList
- LinearSeq
- LinearSeqOps
- List
- ListMap
- ListSet
- LongMap
- Map
- MapOps
- Nil
- NumericRange
- Queue
- Range
- Seq
- SeqMap
- SeqOps
- Set
- SetOps
- SortedMap
- SortedMapOps
- SortedSet
- SortedSetOps
- Stream
- StrictOptimizedMapOps
- StrictOptimizedSeqOps
- StrictOptimizedSetOps
- StrictOptimizedSortedMapOps
- StrictOptimizedSortedSetOps
- TreeMap
- TreeSeqMap
- TreeSet
- Vector
- VectorBuilder
- VectorMap
- WrappedString