Programme Java pour vérifier si un tableau contient une valeur donnée

Dans ce programme, vous apprendrez à vérifier si un tableau contient une valeur donnée en Java.

Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation Java suivantes:

  • Tableaux Java
  • Types de données Java (primitif)

Exemple 1: vérifier si Int Array contient une valeur donnée

 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."); ) )

Production

 3 est trouvé.

Dans le programme ci-dessus, nous avons un tableau d'entiers stockés dans la variable num. De même, le numéro à trouver est stocké dans toFind.

Maintenant, nous utilisons une boucle for-each pour parcourir tous les éléments de num et vérifier individuellement si toFind est égal à n ou non.

Si oui, nous définissons found trueet sortons de la boucle. Sinon, nous passons à l'itération suivante.

Exemple 2: vérifier si un tableau contient une valeur donnée à l'aide de 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."); ) )

Production

 7 est introuvable.

Dans le programme ci-dessus, au lieu d'utiliser une boucle for-each, nous convertissons le tableau en an IntStreamet utilisons sa anyMatch()méthode.

anyMatch()La méthode prend un prédicat, une expression ou une fonction qui renvoie une valeur booléenne. Dans notre cas, le prédicat compare chaque élément n du flux à toFind et renvoie trueou false.

Si l'un des éléments n renvoie true, found est également défini sur true.

Exemple 3: vérifier si un tableau contient une valeur donnée pour les types non primitifs

 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."); ) )

Production

 Quatre est trouvé.

Dans le programme ci-dessus, nous avons utilisé un type de données non primitif Stringet utilisé Arraysla stream()méthode de pour d'abord le convertir en flux et anyMatch()vérifier si le tableau contient la valeur donnée toFind.

Articles intéressants...