C# میں System.Array کیا ہے

C My System Array Kya



C# اعداد و شمار کے ڈھانچے کے طور پر صفوں کے استعمال کی حمایت کرتا ہے، جو ہمیں ایک ہی قسم کے عناصر کے مجموعہ کو ایک مقررہ سائز کے ترتیب وار ترتیب میں ذخیرہ کرنے کے قابل بناتا ہے۔ C# میں تمام صفوں کی خصوصیات سے ماخوذ ہیں۔ نظام۔ صف کلاس، جو صف کی اقسام کے لیے بیس کلاس کے طور پر کام کرتا ہے۔

چونکہ یہ ایک خلاصہ بیس کلاس ہے، اس لیے براہ راست System.Array کلاس کی مثال بنانا ممکن نہیں ہے۔ اس کے بجائے، ہم System.Array سے اخذ کردہ کلاسوں میں سے ایک کی مثالیں بنا سکتے ہیں۔ C# میں تمام صف کی اقسام System.Array پر مبنی ہیں۔

سنگل جہتی صفوں کے علاوہ، C# میں کثیر جہتی صفیں اور جاگڈ ارے بھی ہیں۔ کثیر جہتی صف میں ایک سے زیادہ یا ایک سے زیادہ جہت ہوتی ہے۔ ایک کنارہ دار صف میں، ہر عنصر مختلف سائز کی ایک صف ہو سکتی ہے۔ سادہ الفاظ میں، ایک کندہ دار سرنی صفوں کی ایک صف ہے۔







System.Array کلاس کس کے لیے استعمال ہوتی ہے۔

System.Array کلاس C# میں صفوں کو جوڑنے کے لیے مختلف طریقے اور خصوصیات فراہم کرتی ہے۔ یہ طریقے ہمیں ایک صف میں ذخیرہ شدہ قدروں کو پڑھنے اور اس میں ترمیم کرنے، ایک صف کے سائز اور شکل کے بارے میں معلومات حاصل کرنے اور ایک صف میں عناصر کو تلاش کرنے کی اجازت دیتے ہیں۔



کچھ عام طریقوں میں GetValue()، SetValue()، GetLength()، اور IndexOf() شامل ہیں۔ دی نظام۔ صف کلاس ہمیں مختلف صفوں کو ترتیب دینے، تلاش کرنے اور جوڑ توڑ کرنے کی بھی اجازت دیتا ہے۔



مثال کے طور پر، صف کی لمبائی حاصل کرنے کے لیے، لمبائی کی خاصیت استعمال کیا جاتا ہے. دی رینک پراپرٹی ایک صف میں موجود کل طول و عرض واپس کر سکتا ہے۔ دی GetLength پراپرٹی کثیر جہتی صف میں ایک مخصوص جہت کی لمبائی دیتا ہے۔





System.Array C# میں طریقے اور خواص

System.Array C# میں استعمال ہونے والے چند طریقے اور خصوصیات یہ ہیں:

صاف (): یہ ایک ایسا طریقہ ہے جو عوام کے لیے دستیاب ہے اور کوڈ کے کسی بھی حصے سے اس تک رسائی حاصل کی جا سکتی ہے۔ یہ طریقہ ایک صف کے اندر عناصر کی ایک خاص حد کو کالعدم حوالہ یا صفر پر سیٹ کر سکتا ہے۔



کاپی(): یہ ایک عوامی مشترکہ طریقہ ہے جسے اوورلوڈ کیا جا سکتا ہے اور عناصر کے مخصوص حصے کو ایک صف سے دوسری صف میں کاپی کرنے کے لیے استعمال کیا جا سکتا ہے۔

GetLength(): یہ ایک 32 بٹ انٹیجر لوٹاتا ہے جو کسی صف کی ایک خاص جہت میں کل عناصر کو دکھاتا ہے۔

GetLongLength(): یہ طریقہ 64 بٹ انٹیجر واپس کرتا ہے، جو ہمیں صف کی ایک مخصوص جہت میں کل عناصر فراہم کرتا ہے۔

GetLowerBound(): یہ طریقہ انڈیکس 0 سے شروع ہونے والی صف کی ایک خاص جہت کی نچلی حد کو بازیافت کرتا ہے۔

GetUpperBound(): یہ طریقہ انڈیکس 0 سے شروع ہونے والی صف کی ایک مخصوص جہت کے اوپری باؤنڈ کو بازیافت کرتا ہے۔

GetValue(): یہ طریقہ انڈیکس 1 سے شروع ہونے والی صف میں ایک مخصوص عنصر کی قدر کو بازیافت کرتا ہے۔

IndexOf(): یہ ایک عوامی مشترکہ طریقہ ہے جسے ایک جہتی صف میں کسی خاص قدر کی پہلی موجودگی کے اشاریہ یا آفسیٹ کو واپس کرنے کے لیے اوور لوڈ کیا جا سکتا ہے۔

IsFixedSize(): یہ طریقہ بتاتا ہے کہ آیا کسی صف کا سائز مقرر ہے یا نہیں۔

IsReadonly(): طریقہ ایک قدر دیتا ہے جو اس بات کی نشاندہی کرتا ہے کہ آیا کوئی صف صرف پڑھنے کے لیے ہے یا نہیں۔

LastIndexOf(): یہ ایک عوامی مشترکہ طریقہ ہے جسے اوورلوڈ کیا جا سکتا ہے۔ یہ ایک جہتی صف میں کسی قدر کی آخری موجودگی کا اشاریہ دیتا ہے۔

لمبائی(): یہ طریقہ صفوں کی لمبائی دیتا ہے۔ یہ پبلک پراپرٹی ہے اور 32 بٹ انٹیجر ویلیو آؤٹ پٹ کرتی ہے۔

لمبی لمبائی (): یہ طریقہ صف کے تمام جہتوں میں عناصر کو بتاتا ہے۔ یہ 64 بٹ انٹیجر ویلیو لوٹاتا ہے۔

درجہ (): یہ طریقہ طول و عرض کی تعداد لوٹاتا ہے جو سرنی میں ہے۔

سائز تبدیل کریں(): یہ طریقہ عناصر کی مخصوص تعداد میں ایک صف کا سائز تبدیل کرتا ہے۔

معکوس(): یہ طریقہ ایک جہتی صف میں عنصر کی ترتیب کو ریورس کر سکتا ہے۔

ترتیب دیں(): یہ طریقہ عناصر کو ان کی قدروں کے لحاظ سے صعودی یا نزولی ترتیب میں ایک جہتی صف میں ترتیب دیتا ہے۔

مثال کا کوڈ

ذیل کا کوڈ انٹیجرز کی ایک صف کو شروع کرتا ہے اور مختلف کو ظاہر کرتا ہے۔ نظام۔ صف وہ طریقے جو C# میں صفوں کے ساتھ استعمال کیے جاسکتے ہیں۔ ہر طریقہ کا آؤٹ پٹ کنسول پر الگ سے ظاہر ہوتا ہے۔

سسٹم کا استعمال کرتے ہوئے ;
کلاس پروگرام
{
جامد باطل مرکزی ( تار [ ] args )
{
// عدد کی ایک صف شروع کریں۔
int [ ] نمبرز = { 1 ، 2 ، 3 ، 4 ، 5 } ;


// صف کے مواد کو صاف کریں۔

صف. صاف ( نمبرز ، 0 ، نمبرز لمبائی ) ;

تسلی. رائٹ لائن ( 'صفائی کے بعد صف:' ) ;

کے لیے ( int میں = 0 ; میں < نمبرز لمبائی ; میں ++ )

{

تسلی. لکھیں۔ ( نمبرز [ میں ] + ' ) ;

}

تسلی. رائٹ لائن ( ) ;

// کسی اور صف کے مواد کو نمبروں میں کاپی کریں۔

int [ ] نمبر کاپی = { 7 ، 8 ، 9 } ;

صف. کاپی ( نمبر کاپی ، نمبرز ، نمبر کاپی لمبائی ) ;

تسلی. رائٹ لائن ( 'کاپی کرنے کے بعد صف:' ) ;

کے لیے ( int میں = 0 ; میں < نمبرز لمبائی ; میں ++ )

{

تسلی. لکھیں۔ ( نمبرز [ میں ] + ' ) ;

}

تسلی. رائٹ لائن ( ) ;

// صف کی لمبائی اور لمبی لمبائی حاصل کریں۔

int لمبائی = نمبرز لینتھ حاصل کریں۔ ( 0 ) ;

طویل لمبی لمبائی = نمبرز GetLongLength ( 0 ) ;

تسلی. رائٹ لائن ( 'صف کی لمبائی:' + لمبائی ) ;

تسلی. رائٹ لائن ( 'سرنی کی لمبی لمبائی:' + لمبی لمبائی ) ;

// صف کے نچلے اور اوپری حدود حاصل کریں۔

int کم باؤنڈ = نمبرز GetLowerBound ( 0 ) ;

int اوپری حد = نمبرز GetUpperBound ( 0 ) ;

تسلی. رائٹ لائن ( 'سرنی کی نچلی حد:' + کم باؤنڈ ) ;

تسلی. رائٹ لائن ( 'سرنی کی اوپری حد:' + اوپری حد ) ;

// صف میں ایک مخصوص انڈیکس پر قدر حاصل کریں۔

int ویلیو اے ٹی انڈیکس = ( int ) نمبرز گیٹ ویلیو ( 1 ) ;

تسلی. رائٹ لائن ( 'اشاریہ 1 پر قدر:' + ویلیو اے ٹی انڈیکس ) ;

// صف میں ایک مخصوص قدر کا انڈیکس تلاش کریں۔

int indexOfValue = صف. IndexOf ( نمبرز ، 9 ) ;

تسلی. رائٹ لائن ( 'قیمت 9 کا اشاریہ:' + indexOfValue ) ;

// چیک کریں کہ آیا صف مقررہ سائز اور صرف پڑھنے کے لیے ہے۔

bool is FixedSize = نمبرز فکسڈ سائز ;

bool صرف پڑھنے کے لیے ہے۔ = نمبرز صرف پڑھنے کے لیے ہے۔ ;

تسلی. رائٹ لائن ( 'فکسڈ سائز ہے؟' + فکسڈ سائز ہے۔ ) ;

تسلی. رائٹ لائن ( 'کیا صرف پڑھنے کے لیے ہے؟' + صرف پڑھنے کے لیے ہے۔ ) ;

// صف میں ایک مخصوص قدر کا آخری انڈیکس تلاش کریں۔

int lastIndexOfValue = صف. LastIndexOf ( نمبرز ، 9 ) ;

تسلی. رائٹ لائن ( 'قدر 9 کا آخری اشاریہ:' + lastIndexOfValue ) ;

// صف کی لمبائی حاصل کریں۔

int لمبائی پھر سے = نمبرز لمبائی ;

تسلی. رائٹ لائن ( 'ایک بار پھر صف کی لمبائی:' + لمبائی پھر سے ) ;

// صف کا درجہ حاصل کریں۔

int درجہ = نمبرز رینک ;

تسلی. رائٹ لائن ( 'سرنی کا درجہ:' + درجہ ) ;

// صف کا سائز تبدیل کریں۔

صف. سائز تبدیل کریں۔ ( حوالہ نمبر ، 10 ) ;



// صف کے مواد کو ریورس کریں۔

صف. معکوس ( نمبرز ) ;

تسلی. رائٹ لائن ( 'الٹنے کے بعد صف:' ) ;

کے لیے ( int میں = 0 ; میں < نمبرز لمبائی ; میں ++ )

{

تسلی. لکھیں۔ ( نمبرز [ میں ] + ' ) ;

}

تسلی. رائٹ لائن ( ) ;



// صف کے مواد کو ترتیب دیں۔

صف. ترتیب دیں ( نمبرز ) ;

تسلی. رائٹ لائن ( 'چھانٹنے کے بعد صف:' ) ;

کے لیے ( int میں = 0 ; میں < نمبرز لمبائی ; میں ++ )

{

تسلی. لکھیں۔ ( نمبرز [ میں ] + ' ) ;

}

}

}

آؤٹ پٹ

نتیجہ

C# میں System.Array کلاس ہر قسم کی صفوں کے ساتھ کام کرنے کی بنیاد فراہم کرتی ہے۔ چاہے ہمیں ایک سادہ ایک جہتی صف یا ایک پیچیدہ کثیر جہتی سرنی بنانے کی ضرورت ہو، System.Array کلاس ڈیٹا کے ساتھ مؤثر طریقے سے ہیرا پھیری اور کام کرنے کے لیے مختلف طریقے فراہم کرتی ہے۔ C# میں System.Array کی تفصیلی وضاحت کے لیے مضمون پڑھیں۔