Monday, February 19, 2018

Scala Tutorial 19 - Lists

In this video we will cover the basic syntax and capabilities of Lists in Scala.

Arrays and Lists

Arrays are a fixed length and occupy sequential locations in memory. This makes random access (for example, getting the 37th element) very fast--O(1) .

Lists are composed of values linked together. All access starts from the head (first element) and follows links. Random access takes linear time.

Lists are immutable

Lists, like Strings, are immutable

Because all access is via the head, creating a “new” list is a fast operation.

List operations

Basic fast (constant time) operations

list.head (or list head) returns the first element in the list

list.tail (or list tail) returns a list with the first element removed

value :: list returns a list with value appended to the front

list.isEmpty (or list isEmpty ) tests whether the list is empty

Some slow (linear time) operations

list(i) returns the ith element (starting from 0) of the list

list.last (or list last) returns the last element in the list

list.init (or list init) returns a list with the last element removed

This involves making a complete copy of the list

list.length (or list length) returns the number of elements in the list

list.reverse (or list reverse) returns a new list with the elements in reverse order

In practice, the slow operations are hardly ever needed


My Website -

My Blog -

My Facebook Page -

Google+ -

Twitter -

Pinterest -

Text Case Converter -

Epoch Timestamp Converter -

Decimal - Binary - Hexadecimal Converter -

8-bit Checksum Calculator -

-------------------------Stuff I use to make videos -------------------

Stuff I use to make videos

Windows notebook –

Apple MacBook Pro –

Desktop -

Microphone –

notebook mouse –