Skip to content
Advertisement

Java – How do I create Predicates as Arrays.asList() arguments?

I have a few predicates that I want to put in a list so I can then call stream().noneMatch() on my list. I successfully did this by creating named Predicates but how can I create them within an Arrays.asList()’s argument list?

Here’s the working code that I’d like to convert:

JavaScript

I’d expect the result of the conversion to look something like this:

JavaScript

or

JavaScript

(neither of these are correct)
Where can I specify the argument for the conditions here?

Sorry if this could have been titled better, I always struggle with that.

Advertisement

Answer

The first statement should work but you forgot to specify the predicate type Predicate<MyClass>, otherwise the compiler cannot infer it from the method references:

JavaScript

Or using lambdas:

JavaScript
User contributions licensed under: CC BY-SA
4 People found this is helpful
Advertisement