लुआ - गिरफ्तार
एरे को ऑब्जेक्ट्स की व्यवस्था करने का आदेश दिया जाता है, जो एक आयामी आयामी पंक्तियों का संग्रह हो सकता है या कई पंक्तियों और स्तंभों वाला बहुआयामी सरणी हो सकता है।
लुआ में, पूर्णांक के साथ अनुक्रमण तालिकाओं का उपयोग करके सरणियों को लागू किया जाता है। एक सरणी का आकार तय नहीं है और यह हमारी आवश्यकताओं के आधार पर बढ़ सकता है, स्मृति बाधाओं के अधीन है।
एक-आयामी सरणी
एक-आयामी सरणी को एक सरल तालिका संरचना का उपयोग करके दर्शाया जा सकता है और एक सरल का उपयोग करके प्रारंभिक और पढ़ा जा सकता है forपाश। एक उदाहरण नीचे दिया गया है।
array = {"Lua", "Tutorial"}
for i = 0, 2 do
print(array[i])
end
जब हम उपरोक्त कोड चलाते हैं, तो हमें निम्नलिखित आउटपुट मिलते हैं।
nil
Lua
Tutorial
जैसा कि आप उपरोक्त कोड में देख सकते हैं, जब हम एक इंडेक्स में एक तत्व को एक्सेस करने की कोशिश कर रहे हैं जो कि सरणी में नहीं है, तो यह शून्य पर वापस आ जाता है। लुआ में, इंडेक्सिंग आम तौर पर इंडेक्स 1 से शुरू होती है। लेकिन इंडेक्स 0 और नीचे 0 पर भी ऑब्जेक्ट बनाना संभव है। नकारात्मक सूचकांकों का उपयोग करने वाले सरणी को नीचे दिखाया गया है जहां हम लूप के लिए सरणी का आरंभ करते हैं ।
array = {}
for i= -2, 2 do
array[i] = i *2
end
for i = -2,2 do
print(array[i])
end
जब हम उपरोक्त कोड चलाते हैं, तो हमें निम्न आउटपुट मिलेगा।
-4
-2
0
2
4
बहु-आयामी सरणी
बहु-आयामी सरणियों को दो तरीकों से लागू किया जा सकता है।
- सरणियों का सरणी
- सूचकांकों में हेरफेर करके एकल आयामी सरणी
3. सरणी के सरणी का उपयोग करते हुए 3. 3 के बहुआयामी सरणी के लिए एक उदाहरण नीचे दिखाया गया है।
-- Initializing the array
array = {}
for i=1,3 do
array[i] = {}
for j=1,3 do
array[i][j] = i*j
end
end
-- Accessing the array
for i=1,3 do
for j=1,3 do
print(array[i][j])
end
end
जब हम उपरोक्त कोड चलाते हैं, तो हमें निम्न आउटपुट मिलेगा।
1
2
3
2
4
6
3
6
9
बहुआयामी सरणी के लिए एक उदाहरण नीचे सूचक हेरफेर का उपयोग करके दिखाया गया है।
-- Initializing the array
array = {}
maxRows = 3
maxColumns = 3
for row=1,maxRows do
for col=1,maxColumns do
array[row*maxColumns +col] = row*col
end
end
-- Accessing the array
for row=1,maxRows do
for col=1,maxColumns do
print(array[row*maxColumns +col])
end
end
जब हम उपरोक्त कोड चलाते हैं, तो हमें निम्न आउटपुट मिलेगा।
1
2
3
2
4
6
3
6
9
जैसा कि आप उपरोक्त उदाहरण में देख सकते हैं, डेटा सूचकांकों के आधार पर संग्रहीत किया जाता है। तत्वों को एक विरल तरीके से रखना संभव है और यह एक मैट्रिक्स काम का Lua कार्यान्वयन है। चूंकि यह लुआ में नील मूल्यों को संग्रहीत नहीं करता है, इसलिए लुआ में किसी भी विशेष तकनीक के बिना बहुत सारी मेमोरी को सहेजना संभव है, क्योंकि अन्य प्रोग्रामिंग भाषाओं में इस्तेमाल की जाने वाली विशेष तकनीकों की तुलना में।