Использование метода contains()
для проверки наличия элемента
На этом этапе мы рассмотрим, как проверить, существует ли определенный элемент в коллекции на Java. Коллекции - это фундаментальные структуры данных, используемые для группировки нескольких элементов в единый блок. Java предоставляет различные типы коллекций, такие как списки (Lists), множества (Sets) и отображения (Maps).
Одна из распространенных задач при работе с коллекциями - определить, присутствует ли конкретный элемент. Интерфейс Collection
в Java, являющийся корневым интерфейсом для всех типов коллекций, предоставляет удобный метод для этой цели: contains()
.
Метод contains()
принимает один аргумент - элемент, наличие которого вы хотите проверить, и возвращает логическое значение: true
, если элемент найден в коллекции, и false
в противном случае.
Создадим простую Java - программу, чтобы показать, как использовать метод contains()
с ArrayList
, который является распространенным типом списка.
-
Откройте файл HelloJava.java
в редакторе WebIDE, если он еще не открыт.
-
Замените все содержимое файла следующим кодом:
import java.util.ArrayList;
import java.util.List;
public class HelloJava {
public static void main(String[] args) {
// Create a List of strings
List<String> fruits = new ArrayList<>();
// Add some fruits to the list
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Orange");
fruits.add("Mango");
// Check if the list contains "Banana"
boolean hasBanana = fruits.contains("Banana");
System.out.println("Does the list contain Banana? " + hasBanana);
// Check if the list contains "Grape"
boolean hasGrape = fruits.contains("Grape");
System.out.println("Does the list contain Grape? " + hasGrape);
}
}
Разберем этот новый код:
import java.util.ArrayList;
и import java.util.List;
: Эти строки импортируют необходимые классы для работы со списками (Lists) и ArrayList
.
List<String> fruits = new ArrayList<>();
: Эта строка создает новый ArrayList
, который может хранить объекты типа String
, и присваивает его переменной с именем fruits
.
fruits.add("Apple");
и аналогичные строки: Эти строки добавляют элементы (строки, представляющие названия фруктов) в наш список fruits
.
boolean hasBanana = fruits.contains("Banana");
: Эта строка вызывает метод contains()
для списка fruits
, проверяя, присутствует ли строка "Banana". Результат (true
или false
) сохраняется в логической переменной hasBanana
.
System.out.println("Does the list contain Banana? " + hasBanana);
: Эта строка выводит результат проверки наличия "Banana".
boolean hasGrape = fruits.contains("Grape");
и следующая строка println
: Эти строки выполняют ту же проверку для "Grape", который отсутствует в нашем списке.
-
Сохраните файл (Ctrl + S или Cmd + S).
-
Скомпилируйте модифицированную программу в терминале:
javac HelloJava.java
-
Запустите скомпилированную программу:
java HelloJava
Вы должны увидеть вывод, похожий на следующий:
Does the list contain Banana? true
Does the list contain Grape? false
Этот вывод подтверждает, что метод contains()
правильно определил, что "Banana" присутствует в списке, а "Grape" - нет.
Понимание того, как проверять наличие элементов, является фундаментальным навыком при работе с коллекциями в Java. В следующих шагах мы рассмотрим более подробно метод contains()
и его поведение в различных сценариях.