सहयोगी अरेज़ का उपयोग करना

Ruby:
सहयोगी अरेज़ का उपयोग करना

कैसे:

रूबी में हैश बनाना और उपयोग करना सरल है। आप एक खाली हैश को प्रारम्भ कर सकते हैं, इसे कुंजी-मूल्य जोड़ों से भर सकते हैं, कुंजियों द्वारा मानों को पहुँच सकते हैं, और भी बहुत कुछ। यहाँ आप यह कैसे करते हैं:

# एक हैश बनाना
my_hash = { "name" => "John Doe", "age" => 30 }

# हैश बनाने का एक और तरीका
another_hash = Hash.new
another_hash["position"] = "Developer"

# हैश मानों तक पहुँचना
puts my_hash["name"] # आउटपुट: John Doe

# एक नया कुंजी-मूल्य जोड़ी जोड़ना
my_hash["language"] = "Ruby"
puts my_hash # आउटपुट: {"name"=>"John Doe", "age"=>30, "language"=>"Ruby"}

# एक हैश के जरिए इटरेटिंग
my_hash.each do |key, value|
  puts "#{key}: #{value}"
end
# आउटपुट:
# name: John Doe
# age: 30
# language: Ruby

आप अधिक कुशल कुंजियों के रूप में सिंबल्स का उपयोग भी कर सकते हैं:

# कुंजियों के लिए सिंबल्स का प्रयोग
symbol_hash = { name: "Jane Doe", age: 22 }
puts symbol_hash[:name] # आउटपुट: Jane Doe

गहरी खोज:

एसोसिएटिव एरेज़ की अवधारणा रूबी के लिए अद्वितीय नहीं है; कई भाषाएँ उन्हें विभिन्न नामों जैसे कि पायथन में डिक्शनरीज़ या जावास्क्रिप्ट में ऑब्जेक्ट्स (कुंजी-मूल्य जोड़ों के रूप में इस्तेमाल किए जाने पर) के तहत लागू करती हैं। रूबी के शुरुआती चरणों में, हैश कुछ धीमे थे और उतने बहुमुखी नहीं थे। हालाँकि, समय के साथ, रूबी की हैश की क्रियान्�्यान काफी अनुकूलित हो गई है, विशेष रूप से सिंबल कुंजियों के लिए, जिससे उन्हें बार-बार पहुँच और अपडेट के लिए अत्यंत कुशल बना दिया गया है।

रूबी के हैश उनके सिंटैक्टिक उपयोग की आसानी और लचीलेपन के लिए खड़े हैं - आप लगभग किसी भी ऑब्जेक्ट प्रकार को कुंजी के रूप में उपयोग कर सकते हैं, हालांकि सिंबल्स और स्ट्रिंग्स सबसे आम हैं। अंतर्निहित रूप से, रूबी हैश को एक हैशिंग एल्गोरिदम का उपयोग करके लागू किया जाता है जो गति और स्मृति कुशलता को संतुलित करता है, यहाँ तक कि तत्वों की संख्या बढ़ने के साथ भी।

हालांकि हैश अत्यंत बहुमुखी होते हैं, रूबी में डेटा स्टोरेज के लिए वे अंतिम समाधान नहीं हैं। क्रमबद्ध संग्रहों के लिए, एरेज़ अधिक उपयुक्त होते हैं, और विलक्षण वस्तुओं के सेट के लिए, एक सेट बेहतर विकल्प हो सकता है। आगे, बहुत जटिल डेटा संरचनाओं के लिए, कस्टम क्लासेस बनाना सलाहित हो सकता है।

याद रखें, हैश का उपयोग अन्य डेटा संरचनाओं के विरुद्ध विशेष उपयोग के मामले में मुख्यतः उतरता है - हैश तेज़ लुकअप्स और विलक्षण कुंजियों और उनके मानों के बीच संघों को बनाए रखने में उत्कृष्ट होते हैं।