ما هو System.Array في C #

Ma Hw System Array Fy C



يدعم C # استخدام المصفوفات كهيكل بيانات ، مما يمكننا من تخزين مجموعة من العناصر من نفس النوع بترتيب تسلسلي بحجم ثابت. جميع خصائص الصفيف في C # مشتقة من ملف النظام class ، والتي تعمل كفئة أساسية لأنواع المصفوفات.

نظرًا لأنها فئة أساسية مجردة ، فإن إنشاء مثيل لفئة System.Array مباشرة غير ممكن. بدلاً من ذلك ، يمكننا إنشاء مثيلات لإحدى الفئات المشتقة من System.Array. تستند جميع أنواع المصفوفات في C # إلى System.Array.

بالإضافة إلى المصفوفات أحادية البعد ، تحتوي C # أيضًا على مصفوفات متعددة الأبعاد ومصفوفات خشنة. المصفوفة متعددة الأبعاد لها أبعاد متعددة أو أكبر من واحد. في المصفوفة الخشنة ، يمكن أن يكون كل عنصر مصفوفة بأحجام مختلفة. بكلمات بسيطة ، المصفوفة الخشنة هي مجموعة من المصفوفات.







ما هي فئة System.Array المستخدمة ل

توفر فئة System.Array العديد من الأساليب والخصائص لمعالجة المصفوفات في C #. تسمح لنا هذه الطرق بقراءة وتعديل القيم المخزنة في المصفوفة ، والحصول على معلومات حول حجم وشكل المصفوفة ، والبحث عن العناصر في المصفوفة.



تتضمن بعض الطرق الشائعة GetValue () و SetValue () و GetLength () و IndexOf (). ال النظام تسمح لنا class أيضًا بفرز المصفوفات المختلفة والبحث فيها ومعالجتها.



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





الأساليب والخصائص في System.Array C #

فيما يلي بعض الطرق والخصائص المستخدمة في System.Array C #:

واضح(): هذه طريقة متاحة للجمهور ويمكن الوصول إليها من أي جزء من الكود. يمكن لهذه الطريقة تعيين نطاق معين من العناصر داخل مصفوفة إلى مرجع فارغ أو صفر.



ينسخ(): هذه طريقة عامة مشتركة يمكن تحميلها بشكل زائد واستخدامها لنسخ قسم معين من العناصر من مصفوفة إلى مصفوفة أخرى.

GetLength (): تقوم بإرجاع عدد صحيح 32 بت يُظهر العناصر الإجمالية في بُعد معين من المصفوفة.

GetLongLength (): تُرجع هذه الطريقة عددًا صحيحًا من 64 بت ، مما يعطينا إجمالي العناصر في بُعد معين من المصفوفة.

GetLowerBound (): تسترجع هذه الطريقة الحد الأدنى لبُعد معين من المصفوفة ، بدءًا من الفهرس 0.

GetUpperBound (): تسترجع هذه الطريقة الحد الأعلى لبُعد محدد من المصفوفة ، بدءًا من الفهرس 0.

الحصول على قيمة(): تسترجع هذه الطريقة قيمة عنصر معين في المصفوفة ، بدءًا من الفهرس 1.

دليل ل(): هذه طريقة عامة مشتركة يمكن تحميلها فوق طاقتها لإرجاع الفهرس أو إزاحة التواجد الأول لقيمة معينة في مصفوفة أحادية البعد.

IsFixedSize (): تخبر هذه الطريقة ما إذا كانت المصفوفة ذات حجم ثابت أم لا.

IsReadOnly (): تعطي الطريقة قيمة تشير إلى ما إذا كانت المصفوفة للقراءة فقط أم لا.

LastIndexOf (): هذه طريقة عامة مشتركة يمكن تحميلها فوق طاقتها. يعطي فهرس آخر تواجد لقيمة في مصفوفة أحادية البعد.

طول(): تعطي هذه الطريقة طول المصفوفات. إنها ملكية عامة وتنتج قيمة عدد صحيح 32 بت.

طويل جدا(): تخبر هذه الطريقة العناصر الموجودة في جميع أبعاد المصفوفة. تقوم بإرجاع قيمة عدد صحيح 64 بت.

رتبة(): ترجع هذه الطريقة عدد الأبعاد التي تحتوي عليها المصفوفة.

تغيير الحجم(): تقوم هذه الطريقة بتغيير حجم المصفوفة إلى عدد محدد من العناصر.

يعكس(): يمكن لهذه الطريقة عكس ترتيب العناصر في مصفوفة أحادية البعد.

نوع(): ترتب هذه الطريقة العناصر في مصفوفة أحادية البعد بترتيب تصاعدي أو تنازلي حسب قيمها.

رمز المثال

يهيئ الكود أدناه مصفوفة من الأعداد الصحيحة ويوضح مختلف النظام الطرق التي يمكن استخدامها مع المصفوفات في C #. يتم عرض إخراج كل طريقة بشكل منفصل على وحدة التحكم.

باستخدام النظام ؛
برنامج الفصل
{
ثابتة فارغ رئيسي ( خيط [ ] أرجس )
{
// تهيئة مجموعة من الأعداد الصحيحة
int [ ] أعداد = { 1 و 2 و 3 و 4 و 5 } ؛


// امسح محتويات المصفوفة

مجموعة مصفوفة. واضح ( أعداد و 0 و أعداد. طول ) ؛

وحدة التحكم. اكتب ( 'صفيف بعد المسح:' ) ؛

ل ( int أنا = 0 ؛ أنا < أعداد. طول ؛ أنا ++ )

{

وحدة التحكم. يكتب ( أعداد [ أنا ] + '' ) ؛

}

وحدة التحكم. اكتب ( ) ؛

// انسخ محتويات مصفوفة أخرى إلى أرقام

int [ ] nums = { 7 و 8 و 9 } ؛

مجموعة مصفوفة. ينسخ ( nums و أعداد و nums طول ) ؛

وحدة التحكم. اكتب ( 'صفيف بعد النسخ:' ) ؛

ل ( int أنا = 0 ؛ أنا < أعداد. طول ؛ أنا ++ )

{

وحدة التحكم. يكتب ( أعداد [ أنا ] + '' ) ؛

}

وحدة التحكم. اكتب ( ) ؛

// احصل على طول المصفوفة وطولها

int طول = أعداد. GetLength ( 0 ) ؛

طويل طويل جدا = أعداد. GetLongLength ( 0 ) ؛

وحدة التحكم. اكتب ( 'طول المصفوفة:' + طول ) ؛

وحدة التحكم. اكتب ( 'طول المصفوفة:' + طويل جدا ) ؛

// احصل على الحدود الدنيا والعليا للمصفوفة

int الأدنى = أعداد. GetLowerBound ( 0 ) ؛

int الحد الاعلى = أعداد. GetUpperBound ( 0 ) ؛

وحدة التحكم. اكتب ( 'الحد الأدنى للصفيف:' + الأدنى ) ؛

وحدة التحكم. اكتب ( 'الحد الأعلى للصفيف:' + الحد الاعلى ) ؛

// احصل على القيمة في فهرس معين في المصفوفة

int فهرس القيمة = ( int ) أعداد. الحصول على قيمة ( 1 ) ؛

وحدة التحكم. اكتب ( 'القيمة في الفهرس 1:' + فهرس القيمة ) ؛

// ابحث عن فهرس قيمة محددة في المصفوفة

int indexOfValue = مجموعة مصفوفة. دليل ل ( أعداد و 9 ) ؛

وحدة التحكم. اكتب ( 'فهرس القيمة 9:' + indexOfValue ) ؛

// تحقق مما إذا كانت المصفوفة ذات حجم ثابت وقراءة فقط

قيمة منطقية ثابتة الحجم = أعداد. الحجم ؛

منطقية هي للقراءة فقط = أعداد. IsReadOnly ؛

وحدة التحكم. اكتب ( 'هل حجم ثابت؟' + ثابت الحجم ) ؛

وحدة التحكم. اكتب ( 'هل للقراءة فقط؟' + هي القراءة فقط ) ؛

// ابحث عن الفهرس الأخير لقيمة محددة في المصفوفة

int lastIndexOfValue = مجموعة مصفوفة. LastIndexOf ( أعداد و 9 ) ؛

وحدة التحكم. اكتب ( 'آخر فهرس بقيمة 9:' + lastIndexOfValue ) ؛

// احصل على طول المصفوفة

int الطول = أعداد. طول ؛

وحدة التحكم. اكتب ( 'طول المصفوفة مرة أخرى:' + الطول ) ؛

// احصل على رتبة المصفوفة

int رتبة = أعداد. رتبة ؛

وحدة التحكم. اكتب ( 'ترتيب المصفوفة:' + رتبة ) ؛

// تغيير حجم المصفوفة

مجموعة مصفوفة. تغيير الحجم ( أرقام المرجع و 10 ) ؛



// عكس محتويات المصفوفة

مجموعة مصفوفة. يعكس ( أعداد ) ؛

وحدة التحكم. اكتب ( 'صفيف بعد عكس:' ) ؛

ل ( int أنا = 0 ؛ أنا < أعداد. طول ؛ أنا ++ )

{

وحدة التحكم. يكتب ( أعداد [ أنا ] + '' ) ؛

}

وحدة التحكم. اكتب ( ) ؛



// فرز محتويات المصفوفة

مجموعة مصفوفة. نوع ( أعداد ) ؛

وحدة التحكم. اكتب ( 'صفيف بعد الفرز:' ) ؛

ل ( int أنا = 0 ؛ أنا < أعداد. طول ؛ أنا ++ )

{

وحدة التحكم. يكتب ( أعداد [ أنا ] + '' ) ؛

}

}

}

انتاج |

خاتمة

توفر فئة System.Array في C # أساسًا للعمل مع المصفوفات من جميع الأنواع. سواء كنا بحاجة إلى إنشاء مصفوفة بسيطة أحادية البعد أو مصفوفة معقدة متعددة الأبعاد ، فإن فئة System.Array توفر طرقًا مختلفة لمعالجة البيانات والعمل معها بشكل فعال. للحصول على وصف مفصل لـ System.Array في C # ، اقرأ المقالة.