Програма Kotlin для перевірки, чи містить масив задане значення

У цій програмі ви навчитеся перевіряти, чи містить масив задане значення в Kotlin.

Приклад 1: Перевірте, чи містить масив Int задане значення

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

Коли ви запускаєте програму, результат буде:

 3 знайдено.

У наведеній вище програмі ми маємо масив цілих чисел, що зберігається у змінній num. Так само номер, який потрібно знайти, зберігається у toFind.

Тепер ми використовуємо for-inцикл для перебору всіх елементів num та перевірки індивідуально, якщо toFind дорівнює n чи ні.

Якщо так, ми встановлюємо знайдене trueта вирване з циклу. Якщо ні, ми переходимо до наступної ітерації.

Приклад 2: Перевірте, чи містить масив задане значення, використовуючи 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.") )

Коли ви запускаєте програму, результат буде:

 7 не знайдено.

У наведеній вище програмі замість того, щоб використовувати цикл foreach, ми перетворюємо масив на an IntStreamі використовуємо його anyMatch()метод.

anyMatch()метод приймає предикат, вираз або функцію, яка повертає логічне значення. У нашому випадку предикат порівнює кожен елемент n у потоці з toFind і повертає trueабо false.

Якщо будь-який з елементів n повертається true, знайдено також значення true.

Приклад 3: Перевірте, чи містить масив задане значення для непримітивних типів

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

Коли ви запускаєте програму, результат буде:

 Чотири знайдено.

У наведеній вище програмі ми використовували не примітивний тип даних Stringі використовували метод Arrayss, stream()щоб спочатку перетворити їх у потік і anyMatch()перевірити, чи містить масив задане значення toFind.

Ось еквівалентний код Java: програма Java для перевірки, чи містить масив задане значення.

Цікаві статті...