Let me point out that the "xxxIf" form of name for this idea (removing elements of a list that satisfy a predicate, or otherwise operating on the elements of a list that satisfy a predicate) has a history tracing back to the year 1979. That's more than a third of a century.
--Guy On Sep 5, 2013, at 9:18 AM, Matthew Adams <matt...@matthewadams.me> wrote: > I know it's probably too late, but it occurred to me that > "removeWhere(Predicate)" seems appropriate: > > coll.removeWhere(s -> s.size() > 3); > > > On Thu, Sep 5, 2013 at 4:25 AM, Alan Bateman <alan.bate...@oracle.com>wrote: > >> On 04/09/2013 22:08, Mike Duigou wrote: >>> Hello all; >>> >>> The naming of the Collection.removeIf(Predicate) method has always been >> an uncertain choice. We've gone back and forth between naming it removeIf >> and overloading the existing removeAll(Collection) with a >> removeAll(Predicate). Now that all other library and language decisions >> seem to be settled it seems reasonable to make a final decision on this >> method naming. >>> >>> This patch proposes to use the removeAll(Predicate) overload. This >> choice is made to increase the discoverability of the method and to "reuse" >> the existing user understanding of the removeAll name. There is a minor >> source incompatibility induced by overloading the removeAll name--if >> explicit null is passed then a compiler cannot resolve which overload to >> use. Since null is not a legal value for either overload this source >> incompatibility is expected to only affect tests which check to see what >> response implementations return for null. The ambiguity can be resolved by >> providing a cast to either the Collection or Predicate types to select the >> appropriate overload. >>> >>> http://cr.openjdk.java.net/~mduigou/JDK-8024291/0/webrev/ >>> >> This looks okay to me too. >> >> -Alan. >> >> > > > -- > mailto:matt...@matthewadams.me <matt...@matthewadams.me> > skype:matthewadams12 > googletalk:matt...@matthewadams.me > http://matthewadams.me > http://www.linkedin.com/in/matthewadams