Java Program to Check if An Array Contains a Given Value

To understand this example, you should have the knowledge of the following Java programming topics:


Example 1: Check if Int Array contains a given value

class Main {
  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.");
    else
      System.out.println(toFind + " is not found.");
  }
}

Output

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 for-each 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 an array contains the given value using Stream

import java.util.stream.IntStream;

class Main {
  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.");
    else
      System.out.println(toFind + " is not found.");
      
  }
}

Output

7 is not found.

In the above program, instead of using a for-each loop, we convert the array to an IntStream and use its anyMatch() method.

anyMatch() method takes a predicate, an expression, or a function that 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 an array contains a given value for non-primitive types

import java.util.Arrays;

class Main {
  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.");
    else
      System.out.println(toFind + " is not found.");
  }
}

Output

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 the array contains the given value toFind.

Did you find this article helpful?

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community