logo

Встановлено на Java

The встановити це інтерфейс, доступний у java.util пакет. The встановити інтерфейс розширює інтерфейс колекції. Невпорядкована колекція або список, у якому дублікати не допускаються, називається a інтерфейс колекції . Інтерфейс набору використовується для створення математичного набору. Інтерфейс set використовує методи інтерфейсу колекції, щоб уникнути вставки однакових елементів. Відсортований набір і NavigableSet це два інтерфейси, які розширюють реалізацію набору.

Встановлено на Java

На наведеній вище діаграмі NavigableSet і Відсортований набір це обидва інтерфейси. The NavigableSet розширює SortedSet, тому він не зберігатиме порядок вставки та зберігатиме дані у відсортований спосіб.

SetExample1.java

 import java.util.*; public class setExample{ public static void main(String[] args) { // creating LinkedHashSet using the Set Set data = new LinkedHashSet(); data.add('JavaTpoint'); data.add('Set'); data.add('Example'); data.add('Set'); System.out.println(data); } } 

Вихід:

Встановлено на Java

Примітка: у цьому розділі ми скомпілювали програму з іменем файлу та запускали програму з іменем класу. Оскільки назва файлу та назва класу різні.

Операції в інтерфейсі Set

На наборі ми можемо виконувати всі основні математичні операції, такі як перетин, об’єднання та різниця.

Припустимо, ми маємо дві множини, тобто множина1 = [22, 45, 33, 66, 55, 34, 77] і множина2 = [33, 2, 83, 45, 3, 12, 55]. Ми можемо виконати наступні операції на наборі:

    Перетин:Операція перетину повертає всі ті елементи, які присутні в обох наборах. Перетин set1 і set2 буде [33, 45, 55].Союз:Операція об’єднання повертає всі елементи set1 і set2 в один набір, і цей набір може бути або set1, або set2. Об’єднання множини1 і множини2 буде [2, 3, 12, 22, 33, 34, 45, 55, 66, 77, 83].Різниця:Операція різниці видаляє значення з набору, які присутні в іншому наборі. Різниця множини1 і множини2 становитиме [66, 34, 22, 77].

В наборі, addAll() метод використовується для виконання об'єднання, retainAll() метод використовується для виконання перетину і видалити все() метод використовується для виконання різниці. Розглянемо приклад, щоб зрозуміти, як ці методи використовуються для виконання операцій перетину, об’єднання та різниці.

SetExample2.java

 import java.util.*; public class SetOperations { public static void main(String args[]) { Integer[] A = {22, 45,33, 66, 55, 34, 77}; Integer[] B = {33, 2, 83, 45, 3, 12, 55}; Set set1 = new HashSet(); set1.addAll(Arrays.asList(A)); Set set2 = new HashSet(); set2.addAll(Arrays.asList(B)); // Finding Union of set1 and set2 Set union_data = new HashSet(set1); union_data.addAll(set2); System.out.print('Union of set1 and set2 is:'); System.out.println(union_data); // Finding Intersection of set1 and set2 Set intersection_data = new HashSet(set1); intersection_data.retainAll(set2); System.out.print('Intersection of set1 and set2 is:'); System.out.println(intersection_data); // Finding Difference of set1 and set2 Set difference_data = new HashSet(set1); difference_data.removeAll(set2); System.out.print('Difference of set1 and set2 is:'); System.out.println(difference_data); } } 

Вихід:

Встановлено на Java

опис:

У наведеному вище коді спочатку ми створюємо два масиви, тобто A і B типу integer. Після цього ми створюємо два набори, тобто set1 і set2 типу integer. Ми перетворюємо масив на список і додаємо елементи масиву A в set1, а елементи масиву B в set2.

Для виконання об'єднання створюємо новий набір union_data з тим самим елементом множини1. Потім ми викликаємо метод addAll() для set і передаємо йому set2 як аргумент. Цей метод додасть усі ці елементи до union_data яких у ньому немає, і дає об’єднання обох множин.

Для виконання перетину створюємо новий набір дані_перетину з тим самим елементом множини1. Потім ми викликаємо метод retainAll() для set і передаємо йому set2 як аргумент. Цей метод отримає всі ці елементи з дані_перетину які присутні в наборі2 і зберігають його в intersection_data. Тепер intersection_data містить значення перетину обох наборів.

Для виконання різниці ми створюємо новий набір різниця_даних з тим самим елементом множини1. Потім ми викликаємо метод removeAll() для set і передаємо йому set2 як аргумент. Цей метод видалить усі ці елементи з різниця_даних які присутні в наборі2 і дає різницю обох наборів.

Набір методів

В інтерфейсі набору доступно кілька методів, які ми можемо використати для виконання певної операції над нашими наборами. Це такі методи:

1) додати()

Метод add() вставляє нове значення до набору. Метод повертає true і false залежно від наявності елемента вставки. Він повертає false, якщо елемент уже присутній у наборі, і повертає true, якщо його немає в наборі.

Синтаксис:

 boolean add(type element). 

SetExample3.java

 import java.io.*; import java.util.*; public class addMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(11); data.add(61); data.add(51); System.out.println('data: ' + data); } } 

Вихід:

Встановлено на Java

2) addAll()

Метод addAll() додає всі елементи вказаної колекції до набору.

Синтаксис:

 boolean addAll(Collection data) 

SetExample4.java

 import java.io.*; import java.util.*; class addAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); System.out.println('Set: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); data.addAll(newData); System.out.println('Set: ' + data); } } 

Вихід:

Встановлено на Java

3) ясно()

Метод видаляє всі елементи з набору. Це не видаляє посилання на набір. Він лише видаляє елементи набору.

Синтаксис:

 void clear() 

SetExample5.java

 import java.io.*; import java.util.*; public class clearMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); System.out.println('Set: ' + data); data.clear(); System.out.println('The final set: ' + data); } } 

Вихід:

Встановлено на Java

4) містить()

Метод contains() використовується для визначення наявності елемента в наборі. Його значення, що повертається, є істинним або хибним залежно від присутності елемента.

Синтаксис:

 boolean contains(Object element) 

SetExample6.java

 import java.io.*; import java.util.*; class containsMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('Set: ' + data); System.out.println('Does the Set contains '91'?' + data.contains(91)); System.out.println('Does the Set contains 'javaTpoint'? ' + data.contains('4')); System.out.println('Does the Set contains '51'? ' + data.contains(51)); } } 

Вихід:

Встановлено на Java

5) міститьВсе()

Метод використовується для перевірки наявності всіх елементів колекції в існуючому наборі чи ні. Він повертає true, якщо всі елементи колекції присутні в наборі, і повертає false, навіть якщо один з елементів відсутній в існуючому наборі.

Синтаксис:

 public boolean containsAll(Collection data) 

SetExample7.java

 import java.io.*; import java.util.*; class containsAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); Set newData = new LinkedHashSet(); newData.add(31); newData.add(21); newData.add(41); System.out.println('
Does data contains newData?: '+ data.containsAll(newData)); } } 

Вихід:

Встановлено на Java

6) hashCode()

Метод використовується для отримання значення хеш-коду для поточного екземпляра набору. Він повертає значення хеш-коду цілого типу.

Синтаксис:

 public int hashCode() 

SetExample8.java

 import java.io.*; import java.util.*; class hashCodeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); System.out.println('
The hash code value of set is:'+ data.hashCode()); } } 

Вихід:

Встановлено на Java

7) isEmpty()

Метод isEmpty() використовується для визначення порожнечі набору. Він повертає true, якщо набір порожній, і повертає false, якщо набір не порожній.

Синтаксис:

 boolean isEmpty() 

SetExample9.java

 import java.io.*; import java.util.*; class isEmptyMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); System.out.println('
Is data empty?: '+ data.isEmpty()); } } 

Вихід:

Встановлено на Java

8) ітератор()

Метод iterator() використовується для пошуку ітератора набору. Ітератор використовується для отримання елементів по одному.

Синтаксис:

 Iterator iterate_value = set1.iterator(); 

SetExample10.java

 import java.io.*; import java.util.*; class iteratorMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); Iterator newData = data.iterator(); System.out.println('The NewData values are: '); while (newData.hasNext()) { System.out.println(newData.next()); } } } 

Вихід:

Встановлено на Java

9) видалити()

Метод використовується для видалення зазначеного елемента з набору. Його значення, що повертається, залежить від доступності елемента. Він повертає true, якщо елемент доступний у наборі, і повертає false, якщо він недоступний у наборі.

Синтаксис:

 boolean remove(Object O) 

SetExample11.java

 import java.io.*; import java.util.*; class removeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); data.remove(81); data.remove(21); data.remove(11); System.out.println('data after removing elements: ' + data); } } 

Вихід:

Встановлено на Java

11) removeAll()

Метод видаляє всі елементи існуючого набору з указаної колекції.

Синтаксис:

 public boolean removeAll(Collection data) 

SetExample12.java

 import java.io.*; import java.util.*; class removeAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); System.out.println('NewData: ' + newData); data.removeAll(newData); System.out.println('data after removing Newdata elements : ' + data); } } 

Вихід:

Встановлено на Java

11) retainAll()

Метод зберігає всі елементи з набору, зазначеного в даній колекції.

Синтаксис:

 public boolean retainAll(Collection data) 

SetExample13.java

 import java.io.*; import java.util.*; class retainAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); System.out.println('newData: ' + newData); data.retainAll(newData); System.out.println('data after retaining newdata elements : ' + data); } } 

Вихід:

Встановлено на Java

12) розмір()

Метод повертає розмір набору.

java math.min

Синтаксис:

 int size() 

SetExample14.java

 import java.io.*; import java.util.*; class sizeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); System.out.println('size of the data is : ' + data.size()); } } 

Вихід:

Встановлено на Java

13) removeAll()

Метод використовується для створення масиву з однаковими елементами множини.

Синтаксис:

 Object[] toArray() 

SetExample15.java

 import java.io.*; import java.util.*; class toArrayMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println(&apos;data: &apos; + data); Object[] array_data = data.toArray(); System.out.println(&apos;The array is:&apos;); for (int i = 0; i <array_data.length; i++) system.out.println(array_data[i]); } < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/java-tutorial/81/set-java-16.webp" alt="Set in Java"> <hr></array_data.length;>