تقوم ArrayList والمتجهات بتخزين عناصر المصفوفة. أنها تسمح للمستخدمين بتخزين كائنات متعددة. يتم تخزين البيانات ديناميكيًا في كل منهما.
الوجبات السريعة الرئيسية
- ArrayList و Vector هي تطبيقات مصفوفة يمكن تغيير حجمها في Java.
- المتجه متزامن ، لكن ArrayList ليس كذلك.
- ArrayList أسرع. الموجه آمن للخيط.
ArrayList مقابل Vector
ArrayList عبارة عن مصفوفة يمكن تغيير حجمها ولا تتم مزامنتها ، مما يجعلها سريعة. يستخدم واجهة Iterator لاجتياز العناصر. يخزن المتجه عناصر من نفس النوع أو يحول ضمنيًا ويمكنه استخدام كل من واجهة التكرار والتعداد. إنه متزامن وبالتالي بطيء.

يساعد ArrayList المستخدم على إجراء تعديلات على حجم المصفوفة. ArrayList يجعل الصفيف يتقلص أو يتوسع بناءً على متطلبات المستخدم.
تم العثور على المتجهات في جافا. حزمة الاستخدام. وهو يدعم مجموعة ديناميكية من العناصر مما يعني أن المصفوفة قابلة لتغيير الحجم. تنتمي المتجهات إلى الفئة القديمة.
جدول المقارنة
معلمات المقارنة | ArrayList | ناقلات |
---|---|---|
تزامن | ArrayList غير متزامن ، أي أنه يمكن أن يعمل على خيوط مختلفة في وقت واحد. | يتم مزامنة المتجه ، أي أن مؤشر ترابط واحد فقط يمكنه التعامل مع الكود في لحظة. |
سرعة | عملياتها سريعة لأنها غير متزامنة. | تعمل عمليات المتجه بشكل أبطأ حيث تتم مزامنتها. |
تعديل القياس | إذا تجاوزت العناصر سعتها ، فإن ArrayList يزيد بنسبة 50٪ من حجم الصفيف الحالي. | إذا تجاوزت العناصر سعتها ، فإن المتجه يزيد بنسبة 100٪ من حجم الصفيف الحالي. |
تفضيل | يفضل المبرمجون ArrayList على النواقل. | يفضل أقل لأن التزامن في النواقل يؤدي إلى أداء رديء. |
الاجتياز (التمريري) | يستخدم التكرار لاجتياز العناصر. | يمكنه استخدام التكرار بالإضافة إلى التعداد لاجتياز العناصر. |
ما هي ArrayList؟
ArrayList عبارة عن مصفوفة قابلة للتعديل. تم العثور عليه في جافا. حزمة الاستخدام. يعد إنشاء ArrayList مفيدًا عندما لا يعرف المستخدم حجم البيانات المراد تضمينها.
يتيح ArrayList للمستخدمين إجراء العمليات الأساسية لإضافة العناصر وإزالة العناصر وتغيير العناصر وعمليات التكرار.
ArrayList يدعم عمليات متعددة.
- لإضافة عناصر: استخدم عملية add () لإضافة عناصر.
- للوصول إلى أي عنصر: يمكن الوصول إلى العناصر باستخدام خيار get (). يتم الوصول إلى العناصر باستخدام مفهرس يبدأ من الصفر.
- لتغيير عنصر: لإجراء تغييرات في أي عنصر محدد ، استخدم العملية set ().
- لإزالة العناصر: هذه العمليات الثلاث يتم استخدام Remove () و Removerange (و) و RemoveAt لإزالة العناصر في ArrayList.
يتم تشغيل ArrayList حسب حجمه. ومع ذلك ، يمكن توسيعها عن طريق إضافة العناصر وتقليصها عن طريق إزالة العناصر.
يتم استخدام الطريقتين التاليتين للتحقق مما إذا كان العنصر موجودًا في Java ArrayList أم لا.
- يتضمن()
- دليل ل()
ما هو المتجه؟
يعتبر Vector فئة قديمة تمت مزامنتها. إذا كانت هناك حاجة إلى خيوط متعددة للعمل ، فلا يمكن إجراء خيطين في وقت واحد.
تعتبر النواقل آمنة للخيط. يضمن أمان الخيط للمستخدمين أن جميع مؤشرات الترابط تعمل بشكل مناسب وتفي بمعايير التصميم الخاصة بهم دون تفاعل غير مرغوب فيه.
يضمن Vector إضافة العناصر أو حذفها عن طريق توسيع حجم المتجه أو تقليصه. قد تكون هناك بعض الحالات حيث لا يكون لدى المستخدم معرفة مسبقة فيما يتعلق بطول المصفوفة.
يتيح Vector ، تمامًا مثل ArrayList ، للمستخدمين إجراء العمليات الأساسية لإضافة العناصر وإزالة العناصر وتغيير العناصر وعمليات التكرار.
- لإضافة عناصر: استخدم عملية add () لإضافة عناصر.
- لتغيير العناصر: استخدم العملية set () لتغيير العناصر. تُعزى العناصر في النواقل من خلال فهرسها.
- لإزالة العناصر: استخدم طريقة الإزالة () لإزالة العناصر من المتجه.
يدعم Vector العمليات البسيطة الأخرى بصرف النظر عن العمليات الأساسية المذكورة.
الاختلافات الرئيسية بين ArrayList و Vector
- عمليات ArrayList ليست آمنة لمؤشر الترابط ، في حين أن عمليات المتجه تكون آمنة لمؤشر الترابط.
- ArrayList هي فئة مجموعة ، في حين أن المتجه هو فئة قديمة.