Java – How to determine whether an array contains a particular value in Java


I have a String[] with values like so:

public static final String[] VALUES = new String[] {"AB","BC","CD","AE"};

Given String s, is there a good way of testing whether VALUES contains s?

Best Solution


Warning: this doesn't work for arrays of primitives (see the comments).

Since you can now use Streams.

String[] values = {"AB","BC","CD","AE"};
boolean contains ="s"::equals);

To check whether an array of int, double or long contains a value use IntStream, DoubleStream or LongStream respectively.


int[] a = {1,2,3,4};
boolean contains = IntStream.of(a).anyMatch(x -> x == 4);