Logo ar.removalsclassifieds.com

الفرق بين ArrayList و Array في C # (مع الجدول)

جدول المحتويات:

Anonim

في C # ، من المعروف أن المصفوفة و ArrayList هما أكثر أنواع البيانات استخدامًا. المصفوفة هي الوظيفة الأساسية للغة برمجة C # بينما Arraylist في C # عبارة عن مجموعة.

يتم استخدام كل من Array و ArrayList لتخزين البيانات ولا توجد قيود على أي نوع بيانات يتم تخزينه.

ArrayList مقابل Array في C #

يتمثل الاختلاف بين Array و ArrayList في أن المصفوفة تخزن بيانات من نفس نوع نوع البيانات بينما يمكن لقوائم الصفيف تخزين بيانات من أنواع بيانات مختلفة.

للوصول إلى البيانات من ArrayList ، يحتاج المرء إلى تكرارها باستخدام الكائن ، بينما في المصفوفة يمكنك الوصول إليها بسهولة دون أي كائن.

جدول المقارنة بين ArrayList و Array في C # (في شكل جدولي)

معلمة المقارنة ArrayList مجموعة مصفوفة
نوع ArrayList من نوع غير عام المصفوفة مكتوبة بقوة. يمكن تخزين قيم من نفس نوع البيانات فقط
عدد العناصر إنه ديناميكي ، لذا يمكن تخزين أي عدد من أنواع البيانات يمكن إضافة عدد الإصلاح فقط من العناصر
أداء إنه يحط من الأداء منذ استخدام الملاكمة والتفريغ لديها أداء أفضل.
قيمة فارغة يمكن أن تقبل قيمة NULL لا
فصل يستخدم فئة ثابتة يستخدم مساحة الاسم System.collection

ما هو ArrayList في C #؟

تتم تهيئة قوائم الصفيف باستخدام واجهة القائمة. تعتبر واحدة من أكثر البيانات مرونة في اللغة C3. المجموعة في لغات البرمجة هي فئة خاصة تخزن البيانات وتسمح للمبرمجين باستردادها.

مثال

باستخدام System.collection ؛

ArrayList a = new ArrayList () ،

أ.إضافة (1 ، "مرحبًا") ؛

أ.إضافة (4) ؛

أ.إضافة (8.23) ؛

أ.إضافة (خالية) ؛

بعض الوظائف التي يتم استخدامها للتفاعل مع البيانات المخزنة في قائمة الصفوف.

ما هو Array in C #؟

المصفوفة هي نوع بيانات يستطيع فيه المبرمج تخزين بيانات من نفس النوع وطول ثابت. لا يمكن تغيير قيمة الطول والبيانات أثناء وقت التشغيل. يتم إعطاء قيمة فهرس لجميع عناصر المصفوفة ويكون فهرس الصفيف صفرًا.

ومن ثم فإن القيمة الافتراضية هي صفر من الفهرس للعنصر الأول في المصفوفة. بناء الجملة للتصريح عن المصفوفة وتعريفها في C # كما يلي. نظرًا لأن المصفوفة هي نوع بيانات مرجعي ، يتم تخصيص ذاكرتها في ذاكرة الكومة.

Int [] array = new int [] {10، 20، 30، 40}؛

10 20 30 40 بيانات

0 1 2 3 مؤشرات

بعض النقاط المهمة حول المصفوفات.

الاختلافات الرئيسية بين ArrayList و Array في C #

  1. حجم المصفوفة ثابت ويحتوي على مجموعة متسلسلة لجميع عناصر النوع نفسه. في حين أن حجم قائمة الصفيف غير ثابت ويزيد مع 2 ^ n.
  2. يتم تهيئة بُعد المصفوفة وطول كل بُعد عند إنشاء المصفوفة. أثناء وقت التشغيل ، لا يمكن تغيير قيمة طول المصفوفة. بالنسبة إلى ArrayList ، يمكن تغيير قيمة طول قائمة الصفيف ديناميكيًا.
  3. فهرس العنصر الأول في المصفوفة 0 ومؤشر العنصر الأخير هو n-1 حيث n هو طول حجم المصفوفة.
  4. يحتوي ArrayList على عناصر من أنواع بيانات مختلفة ، بينما تحتوي المصفوفة على بيانات من أنواع بيانات متشابهة. على سبيل المثال ، إذا كانت المصفوفة من نوع عدد صحيح ، فيمكن تخزين الأعداد الصحيحة فقط في المصفوفة.
  5. Array هو نوع بيانات مكتوب بقوة وكفاءته أفضل من ArrayList. نظرًا لأن هناك حاجة في Arraylist unboxing والملاكمة وبالتالي فهي أقل كفاءة.
  6. يزداد حجم ArrayList تلقائيًا ، وبالتالي تحتاج إلى إعطاء أي حجم.

استنتاج

Array و Arraylist هما أنواع البيانات التي تسمح للمطور بتخزين عناصر متعددة من نفس نوع البيانات في Array وأنواع بيانات مختلفة في قائمة الصفيف. يستخدم العديد من المطورين Arraylist نظرًا لأن Arraylist لديه طرق مختلفة غير موجودة في أي نوع بيانات آخر مثل Repeat () و Reverse () و BinarySearch وغيرها الكثير.

تعتبر Array نوع بيانات ثابت الحجم ويمكن الوصول إليها بسهولة بينما في ArrayList يحتاج المرء إلى استخدام كائن واستخدام عامل النقطة للوصول إلى العناصر المخزنة في نوع البيانات.

حسنًا ، إذا احتاج المطور إلى تخزين نفس النوع من العناصر ويحتاج إلى حجم ثابت ، فيجب أن يستخدم مصفوفة بخلاف ذلك ، يجب على المرء استخدام ArrayList.

كلاهما يقوم بنفس عمل تخزين العناصر ولكن الاختلاف الرئيسي هو الحجم الثابت والحجم الديناميكي. لذلك إذا كنت تريد تخزين أنواع بيانات مختلفة مثل null أو char أو أي نوع آخر ، فيجب عليك استخدام ArrayList لأنه نوع بيانات غير عام.

بينما إذا كنت تريد تقييد مستخدم لإدخال أنواع بيانات مختلفة في بنية بيانات ، فيجب على المرء استخدام مصفوفة لأنه يسمح فقط بإدراج نفس النوع من نوع البيانات في مصفوفة.

الفرق بين ArrayList و Array في C # (مع الجدول)