Java Collection Framework съдържа множество интерфейси, един от които е Set Interface. Тази статия ще ви даде подробно въведение в Sets In . Следват указанията, които трябва да бъдат разгледани в тази статия:
Комплекти в Java
Комплектът се дефинира като колекция от неподредени елементи, в които дублиращи се стойности не могат да се съхраняват. Той разширява колекцията и по този начин всички методи в са достъпни в интерфейса Set. Прилага се от HashSet, LinkedHashSet или TreeSort.
Всяко от тези изпълнения действа по различен начин, докато повтаря набора, най-вече по отношение на подреждането на елементите и времето, необходимо за вмъкване и за достъп до елементите.
- 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“ и ние ще се свържем с вас възможно най-скоро.