Комплекти в Java: Знайте как да работите с интерфейса на Java Set



Set in Java е колекция от неподредени елементи; където дублиращи се стойности не могат да се съхраняват. Прочетете тази статия и научете всичко за колекцията Java set.

Java Collection Framework съдържа множество интерфейси, един от които е Set Interface. Тази статия ще ви даде подробно въведение в Sets In . Следват указанията, които трябва да бъдат разгледани в тази статия:

Комплекти в Java

Комплектът се дефинира като колекция от неподредени елементи, в които дублиращи се стойности не могат да се съхраняват. Той разширява колекцията и по този начин всички методи в са достъпни в интерфейса Set. Прилага се от HashSet, LinkedHashSet или TreeSort.





Комплекти - Колекции Java - Edureka

Всяко от тези изпълнения действа по различен начин, докато повтаря набора, най-вече по отношение на подреждането на елементите и времето, необходимо за вмъкване и за достъп до елементите.



    • Hash Set го прави не предоставя никаква гаранция за реда на елементите, докато повтаря набора.
    • LinkedHashSet от друга страна, осигурява гаранция за реда на елементите, докато ги итерира.
    • TreeSet осигурява гаранция, но комплектът е сортиран според естествения ред или чрез конкретно изпълнение на сравнение.

Как да създам комплект?

Следният код определя метода за създаване на нов набор:

Задайте num = нов HashSet ()



Използвали сме генерици за деклариране на набора от цял ​​тип.

Задайте методи в Java:

Можем да изпълняваме множество операции върху набор, както следва:

Добавяне на метод

Методът на добавяне вмъква елемент в . В кода по-долу вмъкваме набор от имена.

Задайте strName = new HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)

Изход:

абстракция на данни в c ++

[Джон Доу]

Премахване на метод

Този метод премахва посочения елемент от набора.

import java.util. * публичен клас Main {public static void main (String args []) {// Създаване на комплект празни набори Set = new HashSet () // Добавяне на елементи към набора set.add ('John') set .add ('Doe') // Показване на набора System.out.println ('Set:' + set) // Премахване на елемента „Doe“ с помощта на метода remove () set.remove ('Doe') // Показване на модифициран набор System.out.println ('Set:' + set)}}

Изход:

Комплект: [Джон, Доу]

Комплект: [Джон]

Е празен метод

Този метод проверки определя дали е празно не е. Връща true, ако комплектът е празен, и false, ако е друго.

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 ('Празен комплект: + 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 публичен клас 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 публичен клас Main {public static void main (String args []) {// Създаване на HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Показване на HashSet System.out.println ('HashSet:' + javaSet) // Проверка за „John“ в набора System.out.println ('John в комплект:' + javaSet.contains ( 'John')) // Проверка за 'Hazel' в набор System.out.println ('Hazel в комплект:' + javaSet.contains ('Hazel'))}}

Изход:

HashSet: [Джон, Доу]

Джон в комплект: вярно

Хейзъл в комплект: невярно

Основна операция върху комплекти в Java

  • Съюз: За да добавим един комплект към друг, използваме операцията Union
  • Пресичане: За да запазим общите стойности от двата набора, използваме операцията за пресичане.
  • Разлика: За да се премахнат стойностите на единия набор, се използва операцията за разлика.

Пример

импортиране на java.util. * публичен клас Main {публична статична празнота 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,})) // Union Union Operation Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // Intersection Operation Set intersection = new HashSet (d) intersection.retainAll (e) System.out.println (' Пресичане: '+ пресичане) // Разлика Операция Набор разлика = нов HashSet (d) razlika.removeAll (e) System.out.println (' Разлика: '+ разлика)}}

Изход:

Съединение: [0, 1, 2, 3, 4, 5, 6, 7, 9]

Пресичане: [0, 1, 2, 3, 9]

Разлика: [4, 6]

Споменатите в метода методи и операции правят зададения интерфейс елементарен и ефективен по своята същност.

Така стигнахме до края на тази статия за „Набори в Java“. Ако искате да научите повече, разгледайте от Edureka, доверена компания за онлайн обучение. Курсът за обучение и сертифициране на Java J2EE и SOA на Edureka е предназначен да ви обучи както за основните, така и за разширените Java концепции, заедно с различни Java рамки като Hibernate & Spring.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на статията „набори в java“ и ние ще се свържем с вас възможно най-скоро.