A generic collection of elements. Methods in this interface support only read-only access to the collection;
read/write access is supported through the KtMutableCollection interface.
@param E the type of elements contained in the collection. The collection is covariant on its element type.
Classes that inherit from this interface can be represented as a sequence of elements that can
be iterated over.
@param T the type of element being iterated over. The iterator is covariant on its element type.
A generic ordered collection of elements. Methods in this interface support only read-only access to the list;
read/write access is supported through the KtMutableList interface.
@param T the type of elements contained in the list. The list is covariant on its element type.
A collection that holds pairs of objects (keys and values) and supports efficiently retrieving
the value corresponding to each key. Map keys are unique; the map holds only one value for each key.
Methods in this interface support only read-only access to the map; read-write access is supported through
the KtMutableMap interface.
@param K the type of map keys. The map is invariant on its key type, as it
can accept key as a parameter (of containsKey for example) and return it in keys set.
@param V the type of map values. The map is covariant on its value type.
Classes that inherit from this interface can be represented as a sequence of elements that can
be iterated over and that supports removing elements during iteration.
@param T the type of element being iterated over. The mutable iterator is invariant on its element type.
A generic ordered collection of elements that supports adding and removing elements.
@param E the type of elements contained in the list. The mutable list is invariant on its element type.
A modifiable collection that holds pairs of objects (keys and values) and supports efficiently retrieving
the value corresponding to each key. Map keys are unique; the map holds only one value for each key.
@param K the type of map keys. The map is invariant on its key type.
@param V the type of map values. The mutable map is invariant on its value type.
A generic unordered collection of elements that does not support duplicate elements, and supports
adding and removing elements.
@param T the type of elements contained in the set. The mutable set is invariant on its element type.
A generic unordered collection of elements that does not support duplicate elements.
Methods in this interface support only read-only access to the set;
read/write access is supported through the KtMutableSet interface.
@param E the type of elements contained in the set. The set is covariant on its element type.
An element annotated with @nullable claims null value is perfectly valid
to return (for methods), pass to (parameters) and hold (local variables and fields).