Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में ऐरे कैसे काम करते हैं?


एक ऐरे एक दिए गए प्रकार के तत्वों की एक निश्चित संख्या को दर्शाता है। तत्व मेमोरी के एक सन्निहित ब्लॉक में संग्रहीत होते हैं और तत्वों तक अत्यधिक कुशल पहुंच प्रदान करते हैं जब तक आप किसी तत्व का इंडेक्स जानते हैं।

C# में ऐरे घोषित करने और आरंभ करने का सिंटैक्स निम्नानुसार है −

// create a string array to hold 5 languages string[] languages = new string[3];

एक बार ऐरे घोषित हो जाने पर, आप ऐरे पर स्क्वायर नोटेशन का उपयोग करके ऐरे में आइटम भर सकते हैं।

languages[0] = "csharp"; languages[1] = "visual basic"; languages[2] = "f#";

हालांकि, एक वैकल्पिक, संक्षिप्त सिंटैक्स है जो उपरोक्त दो चरणों को एक ही चरण में जोड़ता है।

string[] languages = new string[] { "csharp", "visual basic", "f#" };

C# में निहित रूप से टाइप किए गए चरों के साथ, आप वेरिएबल नाम के बाईं ओर से प्रकार को हटाकर केवल var का उपयोग कर सकते हैं।

var languages = new string[] { "csharp", "visual basic", "f#" };

आप उसी स्क्वायर नोटेशन का उपयोग करके ऐरे में किसी भी तत्व तक पहुंच सकते हैं।

string language = languages[0]; Console.WriteLine(language); // prints csharp

ऐरे पर Length प्रॉपर्टी हमें बताती है कि उस ऐरे में कितने आइटम हैं।

int count = languages.Length; Console.WriteLine(count); // 3

यह याद रखना महत्वपूर्ण है कि एक बार ऐरे बन जाने के बाद आप उसकी लंबाई नहीं बदल सकते। ऐरे की सीमा से बाहर किसी तत्व तक पहुंचने का प्रयास एक अपवाद फेंकता है।

string lang = languages[3]; // throws System.IndexOutOfRangeException

यदि आप किसी ऐरे पर लूप करना चाहते हैं, तो भाषा द्वारा प्रदान किए गए for या foreach लूप का उपयोग करें।

// for loop for (int i = 0; i < languages.Length; i++){    string l = languages[i];    Console.WriteLine(l); // prints the names of languages in sequence } // foreach loop foreach (string l in languages){    Console.WriteLine(l); // prints the names of languages in sequence }

डिफ़ॉल्ट मान

जब आप एक ऐरे बनाते हैं, तो C# कंपाइलर तत्वों को उनके डिफ़ॉल्ट मानों पर आरंभ करता है। उदाहरण के लिए, पूर्णांकों का एक ऐरे बनाने से प्रत्येक तत्व का मान 0 पर सेट हो जाता है।

var numbers = new int[3]; foreach (int num in numbers){    Console.WriteLine(num); // prints 000 }

जब तत्व एक मूल्य प्रकार से संबंधित होता है, तो प्रकार के प्रत्येक सदस्य को उसके डिफ़ॉल्ट मान पर असाइन किया जाता है।

Point[] a = new Point[4]; int x = a[2].X; Console.WriteLine(x); // prints 0 public struct Point { public int X, Y; }

हालांकि, संदर्भ प्रकारों के लिए, कंपाइलर बस प्रत्येक आइटम के लिए नल संदर्भ बनाता है।

User[] u = new User[4]; int y = u[2].Y; // NullReference exception public class User { public int X, Y; }

त्रुटि से बचने के लिए, आपको प्रत्येक आइटम को स्पष्ट रूप से आरंभ करना होगा, जैसा कि नीचे दिखाया गया है।

User[] users = new User[5]; for (int i = 0; i < users.Length; i++) // Iterate i from 0 to 999 users[i] = new User();

उदाहरण

using System; class Program{    static void Main(){       string[] languages = new string[3]; // create a string array to hold 5 languages       languages[0] = "csharp";       languages[1] = "visual basic";       languages[2] = "f#";       string[] langugages_two = new string[] { "csharp", "visual basic", "f#" };       var languages_three = new string[] { "csharp", "visual basic", "f#" };       string language = languages[0];       Console.WriteLine(language); // prints csharp       int count = languages.Length; // 3       Console.WriteLine(count);       //string lang = languages[3]; // throws System.IndexOutOfRangeException       // for loop       for (int i = 0; i < languages.Length; i++){          string l = languages[i];          Console.WriteLine(l); // prints the names of languages in sequence       }       // foreach loop       foreach (string l in languages){          Console.WriteLine(l); // prints the names of languages in sequence       }       var numbers = new int[3];       foreach (int num in numbers){          Console.WriteLine(num); // prints 000       }       Point[] a = new Point[4];       int x = a[2].X;       Console.WriteLine(x); // prints 0       User[] u = new User[4];       //int y = u[2].Y; // NullReference exception       User[] users = new User[5];       for (int i = 0; i <users.Length; i++) // Iterate i from 0 to 999       users[i] = new User();    } } public struct Point { public int X, Y; } public class User { public int X, Y; }

आउटपुट

csharp 3 csharp visual basic f# csharp visual basic f# 0 0 0 0
  1. स्कैनर कैसे काम करते हैं: तकनीक और प्रक्रिया समझें स्कैनर कैसे काम करते हैं: तकनीक और प्रक्रिया समझें

    स्कैनर कई प्रकार के होते हैं, और अधिकांश उसी तरह डेटा कैप्चर करते हैं—चाहे वह टेक्स्ट दस्तावेज़, बिजनेस ग्राफिक्स, फोटो, या फिल्म के लिए हो। यहां बताया गया है कि एक स्कैनर एक भौतिक दस्तावेज़ लेता है, उसकी सामग्री को पुन: प्रस्तुत करता है, और फिर डेटा को एक कंप्यूटर फ़ाइल में स्थानांतरित करता है जिस

  1. वाई-फाई एक्सटेंडर कैसे काम करते हैं? वाई-फाई एक्सटेंडर कैसे काम करते हैं?

    वाई-फाई एक्सटेंडर वही करता है जो इसका नाम बताता है: यह आपके वाई-फाई सिग्नल को बढ़ाता है ताकि आप अपने घर के अधिक क्षेत्रों में इंटरनेट का उपयोग कर सकें। यदि आप एक विशाल स्थान में रहते या काम करते हैं, जिसमें कई मंजिलें हैं या मोटी दीवारें या अन्य अवरोध हैं, तो वाई-फाई एक्सटेंडर आपके वाई-फाई सिग्नल को

  1. जावास्क्रिप्ट में एरे को रिड्यूस कैसे करें? जावास्क्रिप्ट में एरे को रिड्यूस कैसे करें?

    जावास्क्रिप्ट में एरे को रिड्यूस करने के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>    body