Java Program to Check if An Array Contains a Given Value
Example 1: Check if Int Array contains a given value
public class Contains {public static void main(String[] args) {int[] num = {1, 2, 3, 4, 5};int toFind = 3;boolean found = false;for (int n : num) {if (n == toFind) {found = true;break;}}if(found)System.out.println(toFind + " is found.");elseSystem.out.println(toFind + " is not found.");}}
When you run the program, the output will be:
3 is found.
In the above program, we have an array of integers stored in variable num. Likewise, the number to be found is stored in toFind.
Now, we use a foreach loop to iterate through all elements of num and check individually if toFind is equal to n or not.
If yes, we set found to true and break from the loop. If not, we move to the next iteration.
Example 2: Check if array contains given value using Stream
import java.util.stream.IntStream;public class Contains {public static void main(String[] args) {int[] num = {1, 2, 3, 4, 5};int toFind = 7;boolean found = IntStream.of(num).anyMatch(n -> n == toFind);if(found)System.out.println(toFind + " is found.");elseSystem.out.println(toFind + " is not found.");}}
When you run the program, the output will be:
7 is not found.
In the above program, instead of using a foreach loop, we convert the array to an IntStream and use its anyMatch() method.
anyMatch() method takes a predicate, an expression or a function which returns a boolean value. In our case, the predicate compares each element n in the stream to toFind and returns true or false.
If any of the element n returns true, found is set to true as well.
Example 3: Check if array contains a given value for non-primitive types
import java.util.Arrays;public class Contains {public static void main(String[] args) {String[] strings = {"One", "Two", "Three", "Four", "Five"};String toFind = "Four";boolean found = Arrays.stream(strings).anyMatch(t -> t.equals(toFind));if(found)System.out.println(toFind + " is found.");elseSystem.out.println(toFind + " is not found.");}}
When you run the program, the output will be:
Four is found.
In the above program, we’ve used a non-primitive data type String and used Arrays‘s stream() method to first convert it to a stream and anyMatch() to check if array contains the given value toFind.