Returns an Optional with this Optional's value, if there is a value present and it matches the predicate. Otherwise, returns an empty Optional.
Optional<T> filter(bool Function(T) predicate);