Go Academy · पाठ

ऐरे: निश्चित-लंबाई संग्रह

ऐरे लिटरल, अनुक्रमण और लंबाई

पाठ 1, कुल 4 में से13 चरण

ऐरे: निश्चित-लंबाई संग्रह, CoddyKit पर Go Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Go Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Go Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

ऐरे क्या है?

Go में ऐरे एक ही प्रकार के तत्वों का निश्चित-लंबाई वाला क्रम है। लंबाई प्रकार का हिस्सा होती है: [3]int और [4]int अलग-अलग प्रकार हैं।

  • ऐरे मान-प्रकार होते हैं — असाइन करने पर पूरा ऐरे कॉपी होता है
  • लंबाई का पता कंपाइल-टाइम पर हमेशा होता है
  • सीधे इनका उपयोग कम होता है; अधिकांश कार्यों के लिए स्लाइस को प्राथमिकता दी जाती है

ऐरे लिटरल

लिटरल की सहायता से ऐरे घोषित और प्रारंभ करें:

package main

func main() {
    primes := [5]int{2, 3, 5, 7, 11}
    names  := [3]string{"Alice", "Bob", "Carol"}
    flags  := [4]bool{true, false, true, false}
    _ = primes; _ = names; _ = flags
}

ऐरे की लंबाई और इंडेक्सिंग

लंबाई के लिए len() और तत्वों को पढ़ने या लिखने के लिए शून्य-आधारित इंडेक्सिंग का उपयोग करें:

package main
import "fmt"

func main() {
    scores := [3]int{90, 85, 92}
    fmt.Println(len(scores)) // 3
    fmt.Println(scores[0])   // 90
    scores[1] = 100
    fmt.Println(scores)      // [90 100 92]
}

ऐरे लिटरल में एलिप्सिस

तत्वों की गिनती कंपाइलर से करवाने के लिए [...] का उपयोग करें:

package main
import "fmt"

func main() {
    days := [...]string{"Mon","Tue","Wed","Thu","Fri"}
    fmt.Println(len(days)) // 5
}

ऐरे मान-प्रकार होते हैं

जब आप किसी ऐरे को असाइन या पास करते हैं, तो Go उसकी पूरी सामग्री की कॉपी बनाता है। कॉपी में बदलाव करने से मूल ऐरे प्रभावित नहीं होता:

package main
import "fmt"

func main() {
    a := [3]int{1, 2, 3}
    b := a     // full copy
    b[0] = 99
    fmt.Println(a) // [1 2 3] — unchanged
    fmt.Println(b) // [99 2 3]
}

ऐरे की तुलना

समान प्रकार और लंबाई वाले ऐरे की तुलना == और != से की जा सकती है:

package main
import "fmt"

func main() {
    x := [3]int{1, 2, 3}
    y := [3]int{1, 2, 3}
    z := [3]int{1, 2, 4}
    fmt.Println(x == y) // true
    fmt.Println(x == z) // false
}

द्वि-आयामी ऐरे

ऐरे को नेस्ट करके ग्रिड या मैट्रिक्स बनाए जा सकते हैं:

package main
import "fmt"

func main() {
    grid := [2][3]int{
        {1, 2, 3},
        {4, 5, 6},
    }
    fmt.Println(grid[1][2]) // 6
}

ऐरे पर पुनरावृत्ति

पुनरावृत्ति के लिए पारंपरिक for लूप या range का उपयोग करें:

package main
import "fmt"

func main() {
    nums := [4]int{10, 20, 30, 40}
    for i, v := range nums {
        fmt.Printf("[%d] = %d\n", i, v)
    }
}

ऐरे बनाम स्लाइस

मुख्य अंतर:

  • ऐरे: निश्चित आकार, मान-प्रकार, आकार प्रकार का हिस्सा होता है
  • स्लाइस: गतिशील आकार, संदर्भ-प्रकार, किसी ऐरे द्वारा समर्थित
  • व्यवहार में, जब तक कंपाइल-टाइम पर निश्चित आकार की आवश्यकता न हो, स्लाइस का उपयोग करें (जैसे, SHA-256 हैश [32]byte)

आम समस्याएँ

इन बातों का ध्यान रखें:

  • इंडेक्स सीमा से बाहर — यदि i >= len(arr) हो, तो Go रनटाइम पर पैनिक करता है
  • बड़े ऐरे फ़ंक्शन में पास करने पर महँगी कॉपी बनती है — इसके बजाय पॉइंटर या स्लाइस का उपयोग करें
  • यह न भूलें कि [3]int और [4]int असंगत प्रकार हैं

त्वरित जाँच

[...]string{"a","b","c"} की लंबाई क्या है?

पुनरावलोकन: ऐरे

मुख्य बातें:

  • ऐरे की लंबाई निश्चित और कंपाइल-टाइम पर ज्ञात होती है तथा यह प्रकार का हिस्सा होती है
  • वे मान-प्रकार होते हैं — असाइन करने पर सभी तत्व कॉपी होते हैं
  • len() और शून्य-आधारित इंडेक्सिंग का उपयोग करें
  • अधिकांश संग्रह-संबंधी आवश्यकताओं के लिए स्लाइस को प्राथमिकता दें

अभ्यास निर्देश

5 पूर्णांकों का एक ऐरे घोषित करें, तीसरे तत्व में 100 मान निर्दिष्ट करें, फिर range का उपयोग करके ऐरे प्रिंट करें।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Go सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
51
पाठ
203

अक्सर पूछे जाने वाले प्रश्न

क्या “ऐरे: निश्चित-लंबाई संग्रह” पाठ निःशुल्क है?

हाँ — Go Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “ऐरे: निश्चित-लंबाई संग्रह” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Go Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“ऐरे: निश्चित-लंबाई संग्रह” में मैं क्या सीखूँगा?

ऐरे लिटरल, अनुक्रमण और लंबाई आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Go Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Go Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Go Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“ऐरे: निश्चित-लंबाई संग्रह” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Go Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Go Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. ऐरे: निश्चित-लंबाई संग्रह
  2. स्लाइस: गतिशील सूचियाँ
  3. मैप: कुंजी-मान भंडार
  4. range से संग्रहों पर पुनरावृत्ति
← Go Academy पर वापस जाएँ