Hi, I think it would be interesting adding the following methods:
1) In Collection: default boolean removeFirstIf(Predicate<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html><? super E<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Collection.html>> filter) 2) In Stream: Stream<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/stream/Stream.html><T<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/stream/Stream.html>> skipFirst(Predicate<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html><? super T<https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/stream/Stream.html>> predicate) The purpose of both methods would be the same. Deleting the first element in the collection that fulfills the predicate. This could be useful in collections/streams with no duplicate elements where performance would be better than using removeIf from Collection of filter from Stream. Regards, Alberto.