Home
### Common methods for all sequences

The following methods are provided by all sequence classes, that is by String, StringBuilder, Array, ArrayBuffer, List, and ListBuffer.

When the result is again a sequence, it is of the same type as the original sequence. So the take method of arrays returns an array, while the take method of strings returns a string.

- A.length is the length (number of elements) of the sequence;
- A.isEmpty is the same as A.length == 0;
- A.nonEmpty is the same as A.length != 0;
- A.head the first element of the sequence;
- A.last the last element of the sequence;
- A.tail a copy of the sequence without its head;
- A contains x tests if the sequence contains an element equal to x;
- A take n returns a new sequence that has the first n elements of A;
- A drop n returns a new sequence that has the elements of A except for the first n elements;
- A.max, A.min, A.sum return the largest, smallest, and sum of elements in the sequence;
- A.reverse returns a new sequence with the elements of A in reverse order;
- A.sorted returns a new sequence with the elements of A in sorted order;
- A.mkString returns a string with all elements of A concatenated together;
- A mkString sep returns a string with all elements of A concatenated, using sep as a separator;
- A.mkString(start, sep, end) returns a string with all elements of A concatenated, using sep as a separator, prefixed by start and ended by end;
- A.toList returns a List with the same elements as the sequence.
- A.toArray returns an array with the same elements as the sequence.
- A.toSet returns a Set with the same elements as the sequence.
- A ++ B returns a new sequence that contains the elements of sequences A and B concatenated;
- A :+ el returns a new sequence that contains the elements of A with the element el appended at the back;
- el +: A returns a new sequence that contains the elements of A with the element el prepended at the front.

You can use a for-loop to look at the elements of a sequence one-by-one:

scala> val L = List("CS109", "is", "the", "best") L: List[java.lang.String] = List(CS109, is, the, best) scala> for (i <- L) | println(i) CS109 is the bestThis is called "iterating over a sequence" and is quite similar to the for-loop in Python.