से नहीं के बराबर तत्वों को हटाने के दो बराबर टुकड़ों में एक सरणी मैं यह कर होता है, विभाजित करने के लिएआतंक विरोधी/रूबी नेस्टेड सरणी
>> a = [1,2,3,4,5]
=> [1, 2, 3, 4, 5]
>> a.in_groups_of((a.size/2.0).ceil) if a.size > 0
=> [[1, 2, 3], [4, 5, nil]]
अब मैं एक नेस्टेड सरणी कि शून्य तत्व शामिल हैं मिल गया है, तो सरणी के आकार अजीब है। मैं नेस्टेड सरणी से नील तत्वों को कैसे हटा सकता हूं? मैं की तरह कुछ करने के लिए,
a.compact
लेकिन दुर्भाग्य से वह काम नहीं करता चाहते हैं, माणिक केवल प्रथम स्तर पर नहीं के बराबर तत्वों और नहीं रिकर्सिवली निकाल देता है। क्या रूबी इस समस्या के लिए कोई अच्छा समाधान प्रदान करता है?
मैंने सोचा था कि & वाक्यविन्यास 1.8.7 – EmFi
@EmFi अच्छा बिंदु में पेश किया गया था - मैं 1.8.7 भूल रहा था। मैं अपना जवाब संपादित करूंगा। –
आप 'ए.मैप (और: कॉम्पैक्ट)' का भी उपयोग कर सकते हैं – Bongs