ArrayList مقابل HashSet

تعد HashSet و ArrayList من بين أهم الفئات في إطار عمل Java Collection. فيما يلي بعض الاختلافات بين HashSet و ArrayList.

Implementation:

الفرق الرئيسي بين ArrayList و HashSet هو أن ArrayList هو تنفيذ واجهة القائمة بينما HashSet هو تنفيذ واجهة Set.

التنفيذ الداخلي

ArrayList يستخدم مصفوفة لتخزين عناصره.
يستخدم HashSet خريطة تجزئة لتنفيذه. < / div>

يحتفظ ترتيب العناصر < / h3 >< div>ArrayList بترتيب العناصر التي تم إدراجها منها.< / div>
HashSet لا يحتفظ بترتيب العناصر.

الازدواجية

ArrayList يسمح بالقيم المكررة.
HashSet لا يسمح بالقيم المكررة.

الأداء
ArrayList فهرسا لتحسين الأداء عن طريق استدعاء طريقة get(index) لاسترداد عنصر وإزالة (فهرس) لإزالة عنصر.
HashSet يعتمد تماما على الكائن ولا يوفر طريقة get.

كائن فارغ

في ArrayList ، يسمح بأي عنصر فارغ.
HashSet يسمح بقيمة فارغة واحدة فقط.


المراجع: