Mündəricat
Java-da bir HashSet nədir
Java-dakı HashSet proqramını həyata keçirən bir sinifdir Set interfeys və məlumatları hashtableda saxlayır. Java.util paketinin bir hissəsidir. Elementləri HashSet-dən saxlamaq və götürmək üçün hashing texnikasından istifadə edir. Hash prosesi zamanı elementləri lazımi indeksdə saxlamaq üçün yaradılan hashcode dəyərindən istifadə edir.
Java HashSet xüsusiyyətləri
- Yalnız təkrarolunmaz dəyəri saxlayır, yəni təkrarlanan dəyərlərə icazə vermir.
- Verilənləri hashcode dəyərinə əsasən saxladığı üçün heç bir əlavə qaydasını təmin etmir.
- HashSet boş dəyərlərin saxlanmasına imkan verir.
- Sinxronizasiya edilmir.
- Java HashSet sinfi, performansı daha sürətli olduğundan axtarış əməliyyatları üçün ən yaxşı seçim kimi istifadə edilə bilər.
HashSet hiyerarşisi
HashSet-də inşaatçılar
konstruktor | təsvir |
---|---|
HashSet () | Varsayılan HashSet yaradır |
HashSet (int tutumu) | Müəyyən edilmiş tutumu olan bir HashSet yaradır |
HashSet (int tutumu, float loadFactor) | Müəyyən edilmiş tutumu və yük faktoru ilə bir HashSet yaradır. |
HashSet (c kolleksiyası) | Göstərilən kolleksiya ilə HashSet yaradır |
HashSet-də metodlar
Aşağıda metodika Java HashSet sinfi tərəfindən dəstəklənir.
Üsul | təsvir | Parameters |
---|---|---|
boolean əlavə (Object e) | Göstərilən elementi dəstə əlavə edir | e - əlavə ediləcək element Element artıq mövcud deyilsə, doğru qayıdır Element artıq mövcuddursa, yalnış qaytarır |
boolean addAll (Collection c) | Göstərilən kolleksiyadakı bütün elementləri əlavə edir | c - əlavə ediləcək elementləri olan kolleksiya |
boşluq təmiz () | Dəstdəki bütün elementləri silir və dəsti boş edir | |
Obyekt klonu () | TreeSet nümunəsinin dayaz bir nüsxəsini qaytarır | |
boolean tərkibində (Object o) var | Dəstdə göstərilən element varsa, doğru qaytarır | o - axtarış üçün element |
booleanAll (Collection c) | Dəst, kolleksiyada göstərilən bütün elementləri ehtiva edirsə, doğru qayıdır | c - axtarış üçün toplama elementləri |
boolean bərabərdir (Object o) | Dəstdəki göstərilən obyekti müqayisə edir | Mövcud olduqda doğru qayıdır Təqdim edilmədiyi təqdirdə yalnış qaytarır |
boolean isEmpty () | Çoxluq boş olduqda və heç bir element daxil etmədikdə doğru qayıdır | |
Təkrarlayıcı iterator () | Artan sırada elementlərin üstünə bir iterator qaytarır | |
boolean çıxarın (Object o) | Müəyyən edilmiş elementi dəstdən silər | o - çıxarılacaq element |
boolean removeAll (Collection c) | Göstərilən kolleksiyadakı bütün elementləri silir | c - silinəcək elementlərin toplanması |
boolean retainAll (Kolleksiya c) | Setdəki göstərilən kolleksiyadakı bütün elementləri saxlayır və Setdəki digər elementləri çıxarır | c - saxlanılacaq elementlərin toplusu |
int ölçüsü () | Dəstdəki elementlərin sayı olan dəstin ölçüsünü qaytarır | |
Spliterator spliterator () | Dəstdəki elementlər üzərindəki bölücüyü qaytarır | |
Obyekt [] toArray () | Çoxluqdakı elementlərin bir sıra təmsilini qaytarır | |
String toString () | Çoxluqdakı elementlərin bir simli nümayəndəliyini qaytarır |
Misal: Element əlavə edin
Aşağıda Java HashSet-ə elementləri əlavə etmək üçün bir nümunə add()
metod. Bundan əlavə, Set-ə elementlər kolleksiyası əlavə edə bilərik addAll()
metodu.
import java.util.HashSet; public class AddHashSetElements { public static void main(String[] args) { HashSet<Integer> hs = new HashSet<Integer>(); hs.add(30); hs.add(10); hs.add(20); hs.add(40); System.out.println("Elements in the HashSet after add operation: " + hs); HashSet<Integer> h = new HashSet<Integer>(); h.add(60); h.add(50); hs.addAll(h); System.out.println("ELements in the HashSet after addAll operation: " + hs); } }
Elements in the HashSet after add operation: [20, 40, 10, 30] ELements in the HashSet after addAll operation: [50, 20, 40, 10, 60, 30]
Misal: Elementləri silin
Aşağıdakı misal, elementləri Java-da HashSet-dən remove()
metod. Elementlərin kolleksiyasını silmək üçün removeAll()
üsul və yalnız toplama elementlərini qorumaq üçün istifadə edə bilərik retainAll()
metodu.
import java.util.HashSet; public class RemoveHashSetElements { public static void main(String[] args) { HashSet<Integer> hs = new HashSet<Integer>(); hs.add(30); hs.add(10); hs.add(20); hs.add(40); HashSet<Integer> h = new HashSet<Integer>(); h.add(60); h.add(50); hs.addAll(h); System.out.println("Elements in the HashSet: " + hs); hs.remove(30); System.out.println("Elements in the HashSet after remove method: " + hs); hs.retainAll(h); System.out.println("Elements in the HashSet after retainAll method: " + hs); hs.removeAll(h); System.out.println("Elements in the HashSet after removeAll method: " + hs); } }
Elements in the HashSet: [50, 20, 40, 10, 60, 30] Elements in the HashSet after remove method: [50, 20, 40, 10, 60] ELements in the HashSet after retainAll method: [50, 60] Elements in the HashSet after removeAll method: []
Nümunə: HashSet silin və boş olub olmadığını yoxlayın
İstifadə edərək HashSet-i silə bilərik clear()
bütün elementləri dəstdən kənarlaşdıran metod. The isEmpty()
metod HashSet'in boş olub olmadığını yoxlayır.
import java.util.HashSet; public class RemoveHashSetElements { public static void main(String[] args) { HashSet<Integer> hs = new HashSet<Integer>(); hs.add(30); hs.add(10); hs.add(20); hs.add(40); System.out.println("Elements in the HashSet: " + hs); System.out.println("Size of the HashSet: " + hs.size()); hs.clear(); System.out.println("Is HashSet empty: " + hs.isEmpty()); } }
Elements in the HashSet: [20, 40, 10, 30] Size of the HashSet: 4 Is HashSet empty: true
Misal: Elementlərin olub olmadığını yoxlayın
Aşağıdakı nümunədə contains()
HashSet-də göstərilən elementin olub olmadığını yoxlamaq üçün metod. İstifadə edə bilərik containsAll()
dəstin elementlər kolleksiyası olub-olmadığını yoxlamaq üçün metod.
import java.util.HashSet; public class CheckElement { public static void main(String[] args) { HashSet<String> city = new HashSet<String>(); city.add("Bangalore"); city.add("Chennai"); city.add("Delhi"); city.add("Mumbai"); System.out.println("Elements in the HashSet: " + city); System.out.println("Check if Chennai exist: " + city.contains("Chennai")); System.out.println("Check if Hyderabad exist: " + city.contains("Hyderabad")); HashSet<String> c = new HashSet<String>(); c.add("Hyderabad"); c.add("Jaipur"); city.addAll(c); System.out.println("Elements after addAll method: " + city); System.out.println("Check if collection exist: " + city.containsAll(c)); } }
Elements in the HashSet: [Delhi, Chennai, Mumbai, Bangalore] Check if Chennai exist: true Check if Hyderabad exist: false Elements after addAll method: [Delhi, Chennai, Jaipur, Mumbai, Hyderabad, Bangalore] Check if collection exist: true
Misal: HashSet elementləri üzərində təkrarlayın
İstifadə edərək Java-da HashSet-dəki elementlərdən keçə bilərik iterator()
metod. Aşağıda eyni şeyi göstərmək üçün bir nümunə var.
import java.util.HashSet; import java.util.Iterator; public class IterateHashSet { public static void main(String[] args) { HashSet<String> names = new HashSet<String>(); names.add("Ravi"); names.add("Rakesh"); names.add("Suresh"); names.add("Dinesh"); Iterator<String> it = names.iterator(); while(it.hasNext()) System.out.println(it.next()); } }
Suresh Ravi Dinesh Rakesh