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

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

Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування Java:

  • Масиви Java
  • Типи даних Java (примітивні)

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

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

Вихідні дані

 3 знайдено.

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

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

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

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

Вихідні дані

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

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

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

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

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

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

Вихідні дані

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

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

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