অ্যারের শুরুতে কোনও উপাদানকে ধাক্কা দেওয়ার সহজতম উপায় কী?


উত্তর:


387

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]"

সেই নামটিই আমি খুঁজছিলাম, নামটি ভুলে গেছি।
এড এস

1
আমি তাকালাম, কেবল তাদের দ্রুত স্ক্যানে দেখিনি।
এড এস

1
@ এড: পৃষ্ঠার শীর্ষে থাকা পদ্ধতির তালিকাটি আরও ভাল ফর্ম্যাট করা যেতে পারে, দৃশ্যমানভাবে এটি স্ক্যান করা যেমন খুব শক্ত। আমি এটি খুঁজে পেয়েছি কারণ আমি যে পদ্ধতিটির নামটি খুঁজছিলাম তা আমি জানতাম :)
মিউ খুব ছোট

118
আপনার যদি মনে হয় shiftএবং এর মধ্যে unshiftকোনটি অ্যারে যুক্ত হয় এবং যা অ্যারে থেকে সরিয়ে দেয় তাতে সমস্যা হয় তবে নামগুলি থেকে মানসিকভাবে একটি 'চ' নামান এবং আপনি দিকের দিক থেকে একটি খুব স্পষ্ট চিত্র পেয়ে যান। ; (এবং তারপর আপনার মনে রাখতে যে এই পদ্ধতি অ্যারের "শেষ" কাজ করে না রয়েছে।)
Phrogz

3
@ ফ্রোগজ আমি বছরের পর বছর শুনেছি সেরা স্মৃতি কৌশল! :-)
কনুনুং

47

আপনি ব্যবহার করতে পারেন insert:

a = [1,2,3]
a.insert(0,'x')
=> ['x',1,2,3]

যেখানে প্রথম আর্গুমেন্টটি sertোকানো সূচক এবং দ্বিতীয়টি মান the


23
array = ["foo"]
array.unshift "bar"
array
=> ["bar", "foo"]

সতর্ক হোন, এটা ধ্বংসাত্মক!


11

আপনি অ্যারে অবয়ব ব্যবহার করতে পারেন :

a = [2, 3]
[1] + a
=> [1, 2, 3]

এটি একটি নতুন অ্যারে তৈরি করে এবং আসলটি পরিবর্তন করে না।


11

রুবি ২.০.০ থেকে অ্যারেটি prepend পদ্ধতিতে চালিত হয় (যা পদ্ধতির জন্য কেবলমাত্র একটি উপনাম unshift)।


1
এটি রুবি 2.4.4p296 এর সাথেও কাজ করে, তাই সম্ভবত কেবল রুবি ২.৪ দিয়ে?
ওব্রোমিওস

9

আপনি methodsolverরুবি ফাংশনগুলি সন্ধান করতে ব্যবহার করতে পারেন ।

এখানে একটি ছোট স্ক্রিপ্ট,

require 'methodsolver'

solve { a = [1,2,3]; a.____(0) == [0,1,2,3] }

এই প্রিন্ট চালানো

Found 1 methods
- Array#unshift

আপনি মেথডলভার ব্যবহার করে ইনস্টল করতে পারেন

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। রুবি ১.৯.৩.৪৪৪৪, আইবিড ০.৯..6, উবুন্টু ১৪.
ক্যামিল গৌডেসুন

1
এর pryপরিবর্তেirb
akuhn
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.