Programa Java para verificar si una matriz contiene un valor dado

En este programa, aprenderá a verificar si una matriz contiene un valor dado en Java.

Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de Java:

  • Matrices de Java
  • Tipos de datos de Java (primitivo)

Ejemplo 1: Verifique si Int Array contiene un valor dado

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

Salida

 Se encuentra 3.

En el programa anterior, tenemos una matriz de enteros almacenados en la variable num. Asimismo, el número a buscar se almacena en toFind.

Ahora, usamos un bucle for-each para recorrer todos los elementos de num y comprobar individualmente si toFind es igual an o no.

Si es así, establecemos encontrado truey salimos del bucle. Si no, pasamos a la siguiente iteración.

Ejemplo 2: Verifique si una matriz contiene un valor dado usando 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."); else System.out.println(toFind + " is not found."); ) )

Salida

 7 no se encuentra.

En el programa anterior, en lugar de usar un bucle for-each, convertimos la matriz en IntStreamy usamos su anyMatch()método.

anyMatch()El método toma un predicado, una expresión o una función que devuelve un valor booleano. En nuestro caso, el predicado compara cada elemento n en la secuencia con toFind y devuelve trueo false.

Si alguno de los elementos n regresa true, encontrado también se establece en true.

Ejemplo 3: compruebe si una matriz contiene un valor dado para tipos no primitivos

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

Salida

 Se encuentra cuatro.

En el programa anterior, usamos un tipo de datos no primitivo Stringy usamos Arraysel stream()método 'para convertirlo primero en un flujo y anyMatch()para verificar si la matriz contiene el valor dado para buscar.

Articulos interesantes...