logo

جافا هاشتاج

Java HashSet التسلسل الهرمي للفئة

يتم استخدام فئة Java HashSet لإنشاء مجموعة تستخدم جدول التجزئة للتخزين. إنه يرث فئة AbstractSet وينفذ واجهة Set.

النقاط المهمة حول فئة Java HashSet هي:

  • يقوم HashSet بتخزين العناصر باستخدام آلية تسمى التجزئة.
  • يحتوي HashSet على عناصر فريدة فقط.
  • يسمح HashSet بقيمة فارغة.
  • فئة HashSet غير متزامنة.
  • لا يحتفظ HashSet بترتيب الإدراج. هنا، يتم إدراج العناصر على أساس رمز التجزئة الخاص بها.
  • HashSet هو أفضل نهج لعمليات البحث.
  • السعة الافتراضية الأولية لـ HashSet هي 16، وعامل التحميل هو 0.75.

الفرق بين القائمة والمجموعة

يمكن أن تحتوي القائمة على عناصر مكررة بينما تحتوي المجموعة على عناصر فريدة فقط.

الأرقام الرومانية 1100

التسلسل الهرمي لفئة HashSet

تعمل فئة HashSet على توسيع فئة AbstractSet التي تنفذ واجهة Set. ترث واجهة Set واجهات Collection وIterable بترتيب هرمي.


إعلان فئة HashSet

دعونا نرى إعلان فئة java.util.HashSet.

ما هو الروبوت بيضة عيد الفصح
 public class HashSet extends AbstractSet implements Set, Cloneable, Serializable 

منشئو فئة Java HashSet

SN البناء وصف
1) مجموعة التجزئة () يتم استخدامه لإنشاء HashSet الافتراضي.
2) HashSet(سعة كثافة العمليات) يتم استخدامه لتهيئة سعة مجموعة التجزئة لسعة قيمة العدد الصحيح المحددة. تنمو السعة تلقائيًا عند إضافة العناصر إلى HashSet.
3) HashSet (سعة int، عامل التحميل العائم) يتم استخدامه لتهيئة سعة مجموعة التجزئة لسعة القيمة الصحيحة المحددة وعامل التحميل المحدد.
4) HashSet(المجموعة ج) يتم استخدامه لتهيئة مجموعة التجزئة باستخدام عناصر المجموعة c.

طرق فئة Java HashSet

الطرق المختلفة لفئة Java HashSet هي كما يلي:

SN المعدل والنوع طريقة وصف
1) منطقية إضافة (ه ه) يتم استخدامه لإضافة العنصر المحدد إلى هذه المجموعة إذا لم يكن موجودًا بالفعل.
2) فارغ واضح() يتم استخدامه لإزالة كافة العناصر من المجموعة.
3) هدف استنساخ () يتم استخدامه لإرجاع نسخة سطحية من مثيل HashSet هذا: لا يتم استنساخ العناصر نفسها.
4) منطقية يحتوي على (كائن س) يتم استخدامه لإرجاع صحيح إذا كانت هذه المجموعة تحتوي على العنصر المحدد.
5) منطقية فارغ() يتم استخدامه لإرجاع صحيح إذا كانت هذه المجموعة لا تحتوي على عناصر.
6) مكرر مكرر () يتم استخدامه لإرجاع مكرر على العناصر الموجودة في هذه المجموعة.
7) منطقية إزالة (الكائن س) يتم استخدامه لإزالة العنصر المحدد من هذه المجموعة إذا كان موجودًا.
8) كثافة العمليات مقاس() يتم استخدامه لإرجاع عدد العناصر في المجموعة.
9) الفاصل الفاصل () يتم استخدامه لإنشاء Spliterator متأخر الربط وسريع الفشل على العناصر الموجودة في المجموعة.

مثال جافا HashSet

دعونا نرى مثالاً بسيطًا على HashSet. لاحظ أن العناصر تتكرر في مجموعة غير مرتبة.

 import java.util.*; class HashSet1{ public static void main(String args[]){ //Creating HashSet and adding elements HashSet set=new HashSet(); set.add('One'); set.add('Two'); set.add('Three'); set.add('Four'); set.add('Five'); Iterator i=set.iterator(); while(i.hasNext()) { System.out.println(i.next()); } } } 
 Five One Four Two Three 

مثال Java HashSet يتجاهل العناصر المكررة

في هذا المثال، نرى أن HashSet لا يسمح بالعناصر المكررة.

 import java.util.*; class HashSet2{ public static void main(String args[]){ //Creating HashSet and adding elements HashSet set=new HashSet(); set.add('Ravi'); set.add('Vijay'); set.add('Ravi'); set.add('Ajay'); //Traversing elements Iterator itr=set.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } } 
 Ajay Vijay Ravi 

مثال Java HashSet لإزالة العناصر

هنا، نرى طرقًا مختلفة لإزالة عنصر.

تنسيق سلسلة جافا
 import java.util.*; class HashSet3{ public static void main(String args[]){ HashSet set=new HashSet(); set.add('Ravi'); set.add('Vijay'); set.add('Arun'); set.add('Sumit'); System.out.println('An initial list of elements: '+set); //Removing specific element from HashSet set.remove('Ravi'); System.out.println('After invoking remove(object) method: '+set); HashSet set1=new HashSet(); set1.add('Ajay'); set1.add('Gaurav'); set.addAll(set1); System.out.println('Updated List: '+set); //Removing all the new elements from HashSet set.removeAll(set1); System.out.println('After invoking removeAll() method: '+set); //Removing elements on the basis of specified condition set.removeIf(str->str.contains('Vijay')); System.out.println('After invoking removeIf() method: '+set); //Removing all the elements available in the set set.clear(); System.out.println('After invoking clear() method: '+set); } } 
 An initial list of elements: [Vijay, Ravi, Arun, Sumit] After invoking remove(object) method: [Vijay, Arun, Sumit] Updated List: [Vijay, Arun, Gaurav, Sumit, Ajay] After invoking removeAll() method: [Vijay, Arun, Sumit] After invoking removeIf() method: [Arun, Sumit] After invoking clear() method: [] 

Java HashSet من مجموعة أخرى

 import java.util.*; class HashSet4{ public static void main(String args[]){ ArrayList list=new ArrayList(); list.add('Ravi'); list.add('Vijay'); list.add('Ajay'); HashSet set=new HashSet(list); set.add('Gaurav'); Iterator i=set.iterator(); while(i.hasNext()) { System.out.println(i.next()); } } } 
 Vijay Ravi Gaurav Ajay 

مثال Java HashSet: Book

دعونا نرى مثالاً على HashSet حيث نقوم بإضافة كتب لتعيين جميع الكتب وطباعتها.

 import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class HashSetExample { public static void main(String[] args) { HashSet set=new HashSet(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications & Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to HashSet set.add(b1); set.add(b2); set.add(b3); //Traversing HashSet for(Book b:set){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } } 

انتاج:

 101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications & Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6 

ربما يعجبك أيضا:

عمل HashSet في جافا