Elm में Array एक ही टाइप की शून्य या अधिक वैल्यू का तेज़ और अपरिवर्तनीय संग्रह है।
List के विपरीत, जो एक डिफ़ॉल्ट इम्पोर्ट है, Array मॉड्यूल को स्पष्ट रूप से इम्पोर्ट करना पड़ता है, import Array या उसी तरह की किसी लाइन से।
ऐरे को इस तरह परिभाषित किया जा सकता है:
import Array exposing (Array)
empty : Array Char
empty = Array.empty
singleValue = Array.fromList [ 5 ] --> Array Int
repeatSingleValue = Array.repeat 2 5 --> Array.fromList [ 5, 5 ]
initialiseFromIndex = Array.initialise 3 (\index -> index * 2) --> Array.fromList [ 0, 2, 4 ]
initialisefromList = Array.fromList [ "a", "b", "c" ] --> Array.fromList [ "a", "b", "c" ]
ऐरे में एलिमेंट जोड़ने के लिए Array.push का उपयोग किया जाता है:
twoToFour = Array.fromList [ 2, 3, 4 ]
oneToFour = Array.push 1 twoToFour --> Array.fromList [ 1, 2, 3, 4 ]
ऐरे का कोई एलिमेंट Array.get से प्राप्त किया जाता है:
sixSeven = Array.fromList [ 6, 7 ]
Array.get 0 sixSeven --> Just 6
ऐरे में किसी एलिमेंट को सेट करने के लिए Array.set का उपयोग किया जाता है:
sixSeven = Array.fromList [ 6, 7 ]
Array.set 1 8 sixSeven --> Array.fromList [ 6, 8 ]
ऐरे पर काम करने वाले फंक्शन Array मॉड्यूल में परिभाषित हैं।
oneTwo = Array.fromList [ 1, 2 ]
Array.length oneTwo --> 2
बनती हुई जादूगरनी एलिस को कुछ बुनियादी बातों का अभ्यास करना है। उसके पास ताश के पत्तों का एक डेक है, जिसे वह अपने हिसाब से बदलना चाहती है।
चीज़ें थोड़ी आसान रखने के लिए वह सिर्फ 1 से 10 तक के पत्ते इस्तेमाल करती है।
getCard फंक्शन बनाइए जो दिए गए डेक में index स्थान पर रखा पत्ता लौटाता है। अगर वह इंडेक्स डेक में मौजूद न हो, तो Nothing लौटाइए।
getCard 2 ( Array.fromList [ 1, 2, 4, 1 ] )
--> Just 4
getCard 6 ( Array.fromList [ 1, 2, 4, 1 ] )
--> Nothing
setCard फंक्शन बनाइए जो एक ऐसा डेक लौटाता है जिसमें index स्थान वाला पत्ता बदलकर दिया गया नया पत्ता कर दिया गया हो। अगर index डेक में न हो, तो मूल डेक ही लौटाइए।
setCard 2 6 ( Array.fromList [ 1, 2, 4, 1 ] )
--> Array.fromList [ 1, 2, 6, 1 ]
setCard 6 6 ( Array.fromList [ 1, 2, 4, 1 ] )
--> Array.fromList [ 1, 2, 4, 1 ]
addCard फंक्शन बनाइए जो नया पत्ता जोड़कर डेक लौटाता है।
addCard 8 ( Array.fromList [ 5, 9, 7, 1 ] )
--> Array.fromList [ 5, 9, 7, 1, 8 ]
removeCard फंक्शन बनाइए जो एक ऐसा डेक लौटाता है जिसमें से index स्थान वाला पत्ता हटा दिया गया हो। अगर दिया गया index डेक का कोई मान्य इंडेक्स न हो, तो मूल डेक ही लौटाइए।
removeCard 2 ( Array.fromList [ 3, 2, 6, 4, 8 ] )
--> Array.fromList [ 3, 2, 4, 8 ]
removeCard 2 ( Array.fromList [ 3, 2 ] )
--> Array.fromList [ 3, 2 ]
evenCardCount फंक्शन बनाइए जो डेक में सम संख्या वाले पत्तों की गिनती करता है।
evenCardCount (Array.fromList [ 3, 8, 4, 5, 1, 6, 10 ] )
--> 4
Exercism पर साइन अप कीजिए और Elm को 28 कॉन्सेप्ट110 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।