مفهوم
أولاً ، دعنا نلقي نظرة على مجموعة المجموعة.
(01) SET هي واجهة موروثة من المجموعة. إنها مجموعة لا تسمح عناصر مكررة.
(02) AbstractSet هي فئة مجردة ، والتي ترث من AbstractCollection. تقوم AbstractCollection بتنفيذ معظم الوظائف في المجموعة ، مما يوفر الراحة لفئات التنفيذ المحددة.
(03) Hastset و Treeset هما فئتان للتنفيذ.
تعتمد Hashset على HashMap ، والتي يتم تنفيذها بالفعل من خلال HashMap. العناصر في التجزئة خارج الترتيب.
تعتمد Treeset على Treemap ، والتي يتم تنفيذها بالفعل من خلال Treemap. يتم طلب العناصر في الأشجار.
على سبيل المثال:
دعونا نلقي نظرة على استخدام مجموعات محددة من خلال اجتياز الانتهاكات:
حزمة com.sort ؛ استيراد java.util.hashset ؛ استيراد java.util.iterator ؛ استيراد java.util.set ؛ /*** مجموعة لا تحتوي على عناصر مكررة. بشكل أكثر تحديدًا ، لا يحتوي SET على عناصر ترضي E1.equals (E2) و E1 و E2 و * Author Owner * */ Class Public Class Settest2 {Public Static Void Main (String [] args) {set <string> set = new hassset <string> () ؛ set.add ("a") ؛ set.add ("B") ؛ set.add ("C") ؛ set.add ("D") ؛ set.add ("e") ؛ set.add ("e") ؛ set.add ("e") ؛ // لا يمكن وضع بيانات مزدوجة في/*** طريقة اجتياز 1 ، اجتياز التكرار*/لـ (iterator <string> iterator = set.iterator () ؛ iterator.hasnext () ؛) {system.out.print (iterator.next ()+") ؛ } system.out.println () ؛ System.out.println ("************************") ؛ / *** for loop loop traversal*/ for (string value: set) {system.out.print (value+"") ؛ }}} ملاحظة: يتم وضع نوع السلسلة في مجموعة المجموعة. إذا وضعنا مثيلًا للصف الذي نحدده ، مثل مثيل فئة الشخص ، يتعين علينا إعادة تهيئة الرمز المتساوي والأساليب المتساوية لأنفسنا وإعادة كتابتنا بحقولنا الرئيسية ، لأنه عند استخدام Hashset ، سيتم استدعاء طريقة hashcode () لتحديد ما إذا كانت قيمة علامة التجزئة للكائن الذي تم تخزينه في المجموعة متسقة مع قيمة رمز التجزئة ؛ إذا كان غير متناسق ، أضفه مباشرة ؛ إذا كان متسقًا ، قارن طريقة متساوية. إذا كانت طريقة متساوية تُرجع صحيحًا ، فهذا يعني أنه تمت إضافة الكائن ، ولن تتم إضافة أي كائنات جديدة ، وإلا سيتم إضافته.