रूबी में कंघी कैसे करें

“गठबंधन करने का सबसे अच्छा तरीका क्या है सरणियों? ”यह सवाल काफी अस्पष्ट है और इसका मतलब कुछ अलग हो सकता है।

कड़ी

एक चीज को दूसरी चीज से जोड़ना है। उदाहरण के लिए, सरणियों को संक्षिप्त करना [1,2,3] तथा [4,5,6] तुम्हे दूंगा [1,2,3,4,5,6]. यह कुछ तरीकों से किया जा सकता है माणिक.

पहला प्लस ऑपरेटर है। यह एक को जोड़ देगा सरणी दूसरे के अंत में, दोनों के तत्वों के साथ एक तीसरा सरणी बनाना।

वैकल्पिक रूप से, उपयोग करें concat विधि (+ ऑपरेटर और कॉनैट विधि कार्यात्मक रूप से समतुल्य हैं)।

यदि आप इनमें से बहुत सारे ऑपरेशन कर रहे हैं तो आप इससे बचना चाह सकते हैं। वस्तु निर्माण स्वतंत्र नहीं है, और इनमें से हर एक ऑपरेशन एक तीसरा सरणी बनाता है। यदि आप किसी सरणी को जगह में बदलना चाहते हैं, तो नए तत्वों के साथ इसे लंबे समय तक बनाकर आप << ऑपरेटर का उपयोग कर सकते हैं। हालाँकि, यदि आप ऐसा कुछ करते हैं, तो आपको एक अप्रत्याशित परिणाम मिलेगा।

उम्मीद के बजाय [1,2,3,4,5,6] सरणी हमें मिलती है [1,2,3,[4,5,6]]. यह समझ में आता है, परिशिष्ट ऑपरेटर आपके द्वारा दी गई वस्तु को लेता है और इसे सरणी के अंत में जोड़ता है। यह पता नहीं था या परवाह नहीं है कि आपने सरणी में किसी अन्य सरणी को जोड़ने की कोशिश की है। इसलिए हम खुद इस पर पाबंदी लगा सकते हैं।

instagram viewer

संचालन सेट करें

दुनिया "गठबंधन" का उपयोग सेट संचालन का वर्णन करने के लिए भी किया जा सकता है। रूबी में चौराहे, संघ और अंतर के बुनियादी सेट संचालन उपलब्ध हैं। याद रखें कि "सेट" वस्तुओं के एक सेट (या गणित में, संख्याओं) का वर्णन करते हैं जो उस सेट में अद्वितीय हैं। उदाहरण के लिए, यदि आप सरणी पर एक सेट ऑपरेशन करने के लिए थे [1,1,2,3] रूबी उस दूसरे 1 को फ़िल्टर कर देगी, भले ही 1 परिणामी सेट में हो। तो ध्यान रखें कि ये सेट ऑपरेशन सूची संचालन से अलग हैं। सेट और सूचियां मौलिक रूप से अलग-अलग चीजें हैं।

आप का उपयोग कर दो सेटों का मिलन कर सकते हैं | ऑपरेटर। यह "या" ऑपरेटर है, यदि कोई तत्व एक सेट या दूसरे में है, तो यह परिणामी सेट में है। तो का परिणाम है [1,2,3] | [3,4,5] है [1,2,3,4,5] (याद रखें कि भले ही दो थ्रेड्स हों, यह एक सेट ऑपरेशन है, लिस्ट ऑपरेशन नहीं)।

दो सेटों का प्रतिच्छेदन दो सेटों को मिलाने का एक और तरीका है। एक "या" ऑपरेशन के बजाय, दो सेटों का प्रतिच्छेदन एक "और" ऑपरेशन है। परिणामी सेट के तत्व उन में हैं दोनों सेट। और, एक "और" ऑपरेशन होने के नाते, हम & ऑपरेटर का उपयोग करते हैं। तो का परिणाम है [1,2,3] & [3,4,5] सादा है [3].

अंत में, दो सेटों को "संयोजित" करने का एक और तरीका उनका अंतर लेना है। दो सेट का अंतर पहले सेट में सभी वस्तुओं का सेट है नहीं दूसरे सेट में। इसलिए [1,2,3] - [3,4,5] है [1,2].

ज़िप करना

अंत में, "ज़िपिंग" है। दो सरणियों को एक साथ जोड़ा जा सकता है बल्कि उन्हें एक अनोखे तरीके से जोड़ दिया जाता है। इसे पहले दिखाना सबसे अच्छा है, और उसके बाद समझाना। का परिणाम [1,2,3] .zip ([3,4,5]) है [ [1,3], [2,4], [3,5] ]. तो यहाँ क्या हुआ? दो सरणियों को संयुक्त किया गया था, पहला तत्व दोनों सरणियों की पहली स्थिति में सभी तत्वों की एक सूची है। ज़िपिंग थोड़ा अजीब ऑपरेशन है और हो सकता है कि आपको इसके लिए ज्यादा इस्तेमाल न करना पड़े। इसका उद्देश्य दो सरणियों को संयोजित करना है जिनके तत्व निकट संबंध रखते हैं।

instagram story viewer