Dans ce programme, vous apprendrez à vérifier si un tableau contient une valeur donnée dans Kotlin.
Exemple 1: vérifier si Int Array contient une valeur donnée
fun main(args: Array) ( val num = intArrayOf(1, 2, 3, 4, 5) val toFind = 3 var found = false for (n in num) ( if (n == toFind) ( found = true break ) ) if (found) println("$toFind is found.") else println("$toFind is not found.") )
Lorsque vous exécutez le programme, la sortie sera:
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 for-in
boucle 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 true
et sortons de la boucle. Sinon, nous passons à l'itération suivante.
Exemple 2: vérifier si le tableau contient une valeur donnée à l'aide de Stream
import java.util.stream.IntStream fun main(args: Array) ( val num = intArrayOf(1, 2, 3, 4, 5) val toFind = 7 val found = IntStream.of(*num).anyMatch ( n -> n == toFind ) if (found) println("$toFind is found.") else println("$toFind is not found.") )
Lorsque vous exécutez le programme, la sortie sera:
7 est introuvable.
Dans le programme ci-dessus, au lieu d'utiliser une boucle foreach, nous convertissons le tableau en un IntStream
et 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 true
ou false
.
Si l'un des éléments n renvoie true
, found est également défini sur true
.
Exemple 3: vérifier si le tableau contient une valeur donnée pour les types non primitifs
import java.util.Arrays fun main(args: Array) ( val strings = arrayOf("One", "Two", "Three", "Four", "Five") val toFind = "Four" val found = Arrays.stream(strings).anyMatch ( t -> t == toFind ) if (found) println("$toFind is found.") else println("$toFind is not found.") )
Lorsque vous exécutez le programme, la sortie sera:
Quatre est trouvé.
Dans le programme ci-dessus, nous avons utilisé un type de données non primitif String
et utilisé Arrays
la stream()
méthode de pour d'abord le convertir en flux et anyMatch()
pour vérifier si le tableau contient la valeur donnée toFind.
Voici le code Java équivalent: programme Java pour vérifier si le tableau contient une valeur donnée.