Returns first element.
if the collection is empty.
Returns the first element matching the given predicate.
if no such element is found.