मैं ऐसा करने के लिए एक पंक्ति के तरीके के बारे में नहीं सोच सकता। क्या उधर रास्ता है?
मैं ऐसा करने के लिए एक पंक्ति के तरीके के बारे में नहीं सोच सकता। क्या उधर रास्ता है?
जवाबों:
unshiftविधि का उपयोग करने के बारे में क्या ?
ary.unshift(obj, ...) → ary
स्वयं के सामने की ओर वस्तुओं को रोकता है, अन्य तत्वों को ऊपर की ओर ले जाता है।
और उपयोग में:
irb>> a = [ 0, 1, 2]
=> [0, 1, 2]
irb>> a.unshift('x')
=> ["x", 0, 1, 2]
irb>> a.inspect
=> "["x", 0, 1, 2]"
shift- बीच में याद रखने में परेशानी हो रही है unshiftऔर जो सरणी में जोड़ता है और जो सरणी से निकालता है, तो मानसिक रूप से नामों से एक 'एफ' छोड़ दें और आपको दिशा के रूप में एक ऑल-बहुत स्पष्ट तस्वीर मिलती है। (और फिर आपको यह याद रखना होगा कि ये विधियाँ सरणी के "अंत" पर काम नहीं करती हैं;)
आप सरणी संयोजन का उपयोग भी कर सकते हैं :
a = [2, 3]
[1] + a
=> [1, 2, 3]
यह एक नया सरणी बनाता है और मूल को संशोधित नहीं करता है।
रूबी 2.5.0 के बाद से, ऐरे जहाजों को prepend विधि के साथ (जो कि unshiftविधि के लिए सिर्फ एक उपनाम है )।
आप methodsolverरूबी कार्यों को खोजने के लिए उपयोग कर सकते हैं ।
यहाँ एक छोटी स्क्रिप्ट है,
require 'methodsolver'
solve { a = [1,2,3]; a.____(0) == [0,1,2,3] }
इस प्रिंट को चला रहा है
Found 1 methods
- Array#unshift
आप का उपयोग कर स्थापित कर सकते हैं Methodolver
gem install methodsolver
irb> require 'methodsolver'कारण LoadError: cannot load such file -- method_source... से /var/lib/gems/1.9.1/gems/methodsolver-0.0.4/lib/methodsolver.rb:2। रूबी 1.9.3p484, irb 0.9.6, Ubuntu 14.
pryइसके बजाय का उपयोग करने का प्रयास करेंirb