Java Collection Framework содержит множество интерфейсов, одним из которых является Set Interface. Эта статья даст вам подробное введение в наборы в . Ниже приведены указания, которые будут рассмотрены в этой статье:
Наборы в Java
Набор может быть определен как набор неупорядоченных элементов, в котором нельзя хранить повторяющиеся значения. Он расширяет Collection и, следовательно, все методы в доступны в интерфейсе Set. Это реализуется с помощью HashSet, LinkedHashSet или TreeSort.
Каждая из этих реализаций действует по-разному во время итерации набора, в основном в отношении порядка элементов и времени, необходимого для вставки и доступа к элементам.
- Hash Set делает не дают никаких гарантий относительно порядка элементов при повторении набора.
- LinkedHashSet с другой стороны, обеспечивает гарантию порядка элементов при их повторении.
- TreeSet обеспечивает гарантию, но набор сортируется в соответствии с естественным порядком или конкретной реализацией компаратора.
Как создать сет?
Следующий код определяет метод создания нового набора:
Set num = new HashSet ()
Мы использовали дженерики объявить набор целочисленного типа.
Установить методы в Java:
Мы можем выполнять несколько операций над набором, например:
Добавить метод
Метод add вставляет элемент в . В приведенный ниже код мы вставляем набор имен.
Установить strName = new HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)
Вывод:
[Джон Доу]
Удалить метод
Этот метод удаляет указанный элемент из набора.
import java.util. * public class Main {public static void main (String args []) {// Создание пустого набора Set set = new HashSet () // Добавление элементов в набор set.add ('John') set .add ('Doe') // Отображение набора System.out.println ('Set:' + set) // Удаление элемента «Doe» с помощью метода remove () set.remove ('Doe') // Отображение модифицированный набор System.out.println ('Set:' + set)}}
Вывод:
массив объектов класса java
Набор: [Джон, Доу]
Набор: [Джон]
Пустой метод
Этот метод проверяет, соответствует ли пусто нет. Он возвращает истину, если набор пуст, и ложь, если в противном случае.
import java.io. * import java.util. * public class Main {public static void main (String args []) {Set javaSet = new HashSet () // Добавление элементов в Set javaSet.add ('John') javaSet .add ('Doe') // Отображение набора System.out.println ('Set:' + javaSet) // Проверка, является ли набор пустым System.out.println ('Empty Set:' + javaSet.isEmpty () ) // Очистка набора с помощью метода clear () javaSet.clear () // Проверка, является ли набор пустым System.out.println ('Empty Set:' + javaSet.isEmpty ())}}
Вывод:
Набор: [Джон, Доу]
Пустой набор: ложь
Пустой набор: истина
Размер Метод
Метод size () возвращает размер набора, то есть количество элементов, присутствующих в наборе.
import java.util. * public class Main {public static void main (String args []) {// Создание набора Set set = new HashSet () set.add ('John') set.add ('Doe') System .out.println ('Set:' + set) // Отображение размера отправленного System.out.println ('Размер набора:' + set.size ())}}
Вывод:
Набор: [Джон, Доу]
Размер набора: 2
Итерация по набору
Мы можем перебрать все элементы, присутствующие в наборе, следующим способом:
import java.util. * import java.util.HashSet public class Main {public static void main (String args []) {// Создание HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Отображение набора System.out.println ('HashSet:' + javaSet) // Создание итератора Iterator itr = javaSet.iterator () // Отображение значений после итерации System.out.println (' Значения итератора: ') while (itr.hasNext ()) {System.out.println (itr.next ())}}}
Вывод:
HashSet: [Джон, Доу]
Значения итератора:
Джон
Делать
Поиск в наборе
Мы используем метод contains (), чтобы определить, содержит ли набор указанный элемент. Возвращает true, если элемент найден, и false в противном случае.
import java.io. * import java.util.HashSet public class Main {public static void main (String args []) {// Создание HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Отображение HashSet System.out.println ('HashSet:' + javaSet) // Проверка наличия «Джона» в наборе System.out.println ('John in set:' + javaSet.contains ( 'John')) // Проверяем наличие 'Hazel' в наборе System.out.println ('Hazel in set:' + javaSet.contains ('Hazel'))}}
Вывод:
HashSet: [Джон, Доу]
Джон в наборе: правда
Орешник в наборе: ложь
Базовая операция над множествами в Java
- Союз: Чтобы добавить один набор к другому, мы используем операцию Union
- Пересечение: Чтобы сохранить общие значения из обоих наборов, мы используем операцию пересечения.
- Разница: Чтобы удалить значения одного набора, из другого набора используется операция разности.
пример
import java.util. * public class Main {public static void main (String args []) {Set d = new HashSet () d.addAll (Arrays.asList (new Integer [] {3, 2, 1, 9, 6 , 4, 0})) Set e = new HashSet () e.addAll (Arrays.asList (new Integer [] {3, 1, 9, 5, 2, 0, 7,})) // Операция объединения Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // Операция пересечения Установить пересечение = new HashSet (d) correction.retainAll (e) System.out.println (' Пересечение: '+ пересечение) // Операция разницы Установить разницу = новый HashSet (d) разность.removeAll (e) System.out.println (' Разница: '+ разница)}}
Вывод:
Союз: [0, 1, 2, 3, 4, 5, 6, 7, 9]
использование итератора в Java
Пересечение: [0, 1, 2, 3, 9]
Разница: [4, 6]
Методы и операции, упомянутые в методе, делают заданный интерфейс элементарным и эффективным по своей природе.
На этом мы подошли к концу статьи о «Наборы в Java». Если вы хотите узнать больше, ознакомьтесь с от Edureka, надежной компании онлайн-обучения. Курс обучения и сертификации по Java J2EE и SOA от Edureka разработан, чтобы научить вас базовым и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.
Есть вопрос к нам? Пожалуйста, укажите это в комментариях к статье «Наборы в java», и мы свяжемся с вами как можно скорее.