Рубрики

Установить на Java

  • Set — это интерфейс, расширяющий коллекцию. Это неупорядоченная коллекция объектов, в которой нельзя хранить повторяющиеся значения.
  • В основном, Set реализован с помощью HashSet, LinkedHashSet или TreeSet (отсортированное представление).
  • Set имеет различные методы для добавления, удаления, очистки, размера и т. Д., Чтобы улучшить использование этого интерфейса

// Java-код для добавления элементов в Set

import java.util.*;

public class Set_example

{

    public static void main(String[] args)

    {

        // Установить демонстрацию используя HashSet

        Set<String> hash_Set = new HashSet<String>();

        hash_Set.add("Geeks");

        hash_Set.add("For");

        hash_Set.add("Geeks");

        hash_Set.add("Example");

        hash_Set.add("Set");

        System.out.print("Set output without the duplicates");

  

        System.out.println(hash_Set);

  

        // Установить демонстрацию с помощью TreeSet

        System.out.print("Sorted Set after passing into TreeSet");

        Set<String> tree_Set = new TreeSet<String>(hash_Set);

        System.out.println(tree_Set);

    }

}

(Обратите внимание, что мы ввели дублирующую сущность, но она не отображается в выходных данных. Кроме того, мы можем напрямую отсортировать записи, передав неупорядоченный Set в качестве параметра TreeSet).

Выход:

Set output without the duplicates[Set, Example, Geeks, for]
Sorted Set after passing into TreeSet[Example, For, Geeks, Set]

Примечание. Как мы видим, дублирующая запись «Geeks» игнорируется в конечном выводе, интерфейс Set не допускает дублирование записей.

Теперь мы увидим некоторые основные операции над множеством, то есть объединение, пересечение и разность.

Давайте рассмотрим пример двух целочисленных множеств:

  • [1, 3, 2, 4, 8, 9, 0]
  • [1, 3, 7, 5, 4, 0, 7, 5]

союз
В этом мы могли бы просто добавить один набор с другим. Поскольку набор сам по себе не допускает повторяющихся записей, нам не нужно заботиться об общих значениях.

Ожидаемый результат:

Union : [0, 1, 2, 3, 4, 5, 7, 8, 9]

пересечение
Нам просто нужно сохранить общие значения из обоих множеств.

Ожидаемый результат:

Intersection : [0, 1, 3, 4]

разница
Нам просто нужно удалить все значения одного набора из другого.

Ожидаемый результат:

Difference : [2, 8, 9]

// Java-код для демонстрации объединения, пересечения и различия
// на множестве

import java.util.*;

public class Set_example

{

    public static void main(String args[])

    {

        Set<Integer> a = new HashSet<Integer>();

        a.addAll(Arrays.asList(new Integer[] {1, 3, 2, 4, 8, 9, 0}));

        Set<Integer> b = new HashSet<Integer>();

        b.addAll(Arrays.asList(new Integer[] {1, 3, 7, 5, 4, 0, 7, 5}));

  

        // Найти союз

        Set<Integer> union = new HashSet<Integer>(a);

        union.addAll(b);

        System.out.print("Union of the two Set");

        System.out.println(union);

  

        // Чтобы найти пересечение

        Set<Integer> intersection = new HashSet<Integer>(a);

        intersection.retainAll(b);

        System.out.print("Intersection of the two Set");

        System.out.println(intersection);

  

        // Найти симметричную разность

        Set<Integer> difference = new HashSet<Integer>(a);

        difference.removeAll(b);

        System.out.print("Difference of the two Set");

        System.out.println(difference);

    }

}

Выход:

 Объединение двух комплектов [0, 1, 2, 3, 4, 5, 7, 8, 9]
Пересечение двух множеств [0, 1, 3, 4]
Разница между двумя наборами [2, 8, 9] 

Эта статья предоставлена Пранджалом Матуром . Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

Установить на Java

0.00 (0%) 0 votes