C# Arrays

Introduction to C# Arrays

जैसा की आप जानते है array similar type (int, float, char) के elements का collection होता है। Array में values contiguous memory locations में store की जाती है। Array सबसे basic और simple data structure होता है। Arrays multiple variables create करने की problem को solve करते है।

Array में हर memory location को एक index number से identify किया जाता है। Arrays की index zero से start होती है। हर memory location को index numbers के माध्यम से एक independent variable की तरह यूज़ किया जा सकता है। उदाहरण के लिए आप array indexes को इस प्रकार यूज़ कर सकते है।

arrayName[0];
arrayName[1];
arrayName[2];
..
..
..
arrayName[n];

यदि आपके array की size 10 है तो आखिरी element 9th position पर store होगा। ऐसा इसलिए होता है क्योंकि array की always 0 से शुरू होगी।

C# में 3 तरह के arrays define किये जा सकते है।

  • Single Dimensional
  • Multi Dimensional
  • Jagged Arrays

C# में भी arrays उसी प्रकार काम करते है जैसे दूसरी programming languages में काम करते है। लेकिन C# का array declaration syntax दूसरी programming languages से अलग है। उदाहरण के लिए C# में brackets [] type के बाद लगाए जाते है। दूसरी popular languages में brackets array name के बाद लगाए जाते है। यदि आप C# में array name के बाद brackets लगाते है तो program compile time error show करता है।

C# arrays में दूसरी languages से एक और major difference पाया जाता है। C# arrays में आप चाहे तो array की size declare किये बिना ही directly उसमें values add कर सकते है। इसके बारे में आगे detail से बताया जायेगा। आइये उससे पहले देखते है की C# में array कैसे declare करते है।

Declaring C# Arrays

C# में arrays declare करने का basic syntax निचे दिया जा रहा है।

type [] arrayName ;

C# में array declare करने के लिए सबसे पहले आप जिस type का array create करना चाहते है वो type define करते है। Type के बाद में brackets [] define किये जाते है। आखिर में array का unique नाम दिया जाता है। इसका उदाहरण निचे दिया जा रहा है।

int [] empId;

इस statement से array सिर्फ declare किया जाता है।

आप चाहे तो multi dimensional array भी create कर सकते है। इस तरह के array में values row और column के format में store की जाती है। Multi dimensional array create करने का basic syntax निचे दिया गया है।

type [,] arrayName

Multi dimensional arrays create करते समय आप brackets में एक comma लगाते है। ये comma compiler को बताता है की ये एक multi dimensional array है। ये comma rows और columns की संख्या को separate करता है। इसे निचे एक उदाहरण के माध्यम से समझाया गया है।

int [] empId

आप jagged arrays भी create कर सकते है। इस तरह के arrays में एक array के अंदर दूसरा array create किया जाता है। इसका syntax निचे दिया जा रहा है।

type [][] arrayName;

Creating C# arrays

Arrays को declare करने के बाद आप उन्हें create करते है। जब आप array create करते है तब ही array को memory allocate की जाती है। Array create करने के लिए आप new keyword यूज़ करते है। New keyword के बाद आप brackets में array की size देते है। इसका उदाहरण निचे दिया जा रहा है।

int [] empId = new int [5];

इसी प्रकार आप multidimensional और jagged arrays भी create कर सकते है।

Initializing C# Arrays

C# में आप arrays को कई तरह से define कर सकते है। आप चाहे तो complete syntax भी यूज़ कर सकते है और आप चाहे तो short syntax भी यूज़ कर सकते है। Complete syntax यूज़ करते हुए आप array को इस प्रकार initialize कर सकते है।

int [] empId = new int[5] {1,2,3,4,5,6};

आप चाहे तो बिना array की size define किये भी array को initialize कर सकते है। ऐसी situation में आप array में जितने elements डालेंगे array की size उतनी ही हो जाएगी।

int [] empId = new int[]  {1,2,3,4,5,6};

यदि आप चाहे तो बिना new operator के भी array को initialize कर सकते है। इसका उदाहरण निचे दिया जा रहा है।

int empId = {1,2,3,4,5,6};

पुरे array को एक साथ initialize करने के बजाय आप चाहे तो एक एक index को भी initialize कर सकते है। इसका example निचे दिया जा रहा है।

empId[0] = 1;
empId[1] = 2;
empId[2] = 3;
empId[3] = 4;

Accessing Array Members

Array members को आप index number से access कर सकते है। उदाहरण के लिए यदि आप किसी variable को एक array element assign करना चाहते है तो ऐसा आप इस प्रकार कर सकते है।

int num = empID[3];

यदि आप किसी array element को print करना चाहते है तो ऐसा भी आप index number के द्वारा ही कर सकते है। इसका उदाहरण निचे दिया जा रहा है।

Console.WriteLine(empId[3]);

Using foreach Loop

C# आपको ऐसा loop provide करती है जो खासकर arrays के लिए बनाया गया है। इस loop को foreach loop कहते है। इस loop में आप loop control variable और array का नाम pass करते है। ये loop pass किये गए array को end तक traverse करता है। इस loop में in keyword भी यूज़ किया जाता है जो बताता है की कौनसे array को traverse किया जायेगा। इस loop में आपको variable को increment करने की आवश्यकता नहीं होती है।

इस loop के द्वारा आप array में values store भी करवा सकते है और array की values को print भी करवा सकते है। इस loop का basic syntax निचे दिया गया है।

foreach(variable in arrayName)
{

}

आइये इस loop को एक उदाहरण से समझने का प्रयास करते है।

foreach(int i in empId)
{
   Console.WriteLine(i);
}