我們經(jīng)常需要在Ruby中使用數(shù)組,但是對(duì)于小白們來說使用Ruby數(shù)組并不是一件容易的事,那么我們現(xiàn)在就跟小編一起去看看Ruby中數(shù)組的使用方法,感興趣的朋友們快來參考參考吧。
?Ruby數(shù)組是有序的,任何對(duì)象的??整數(shù)索引的集合。每個(gè)數(shù)組中的元素相關(guān)聯(lián),并提到的一個(gè)索引。
數(shù)組下標(biāo)從0開始,如C或Java。負(fù)數(shù)索引假設(shè)數(shù)組末尾---也就是說,-1表示最后一個(gè)元素的數(shù)組索引,-2是數(shù)組中最后一個(gè)元素的下一個(gè)元素等等。
Ruby的數(shù)組可以容納對(duì)象,如字符串,整數(shù),長(zhǎng)整數(shù),哈希,符號(hào),甚至其他Array對(duì)象。Ruby數(shù)組沒有在其他語言中數(shù)組一樣嚴(yán)格。Ruby數(shù)組自動(dòng)增長(zhǎng)同時(shí)增加元素。
創(chuàng)建數(shù)組:
有許多方法來創(chuàng)建或初始化一個(gè)數(shù)組。一種方式是 new 類方法:
names = Array.new
可以設(shè)置一個(gè)數(shù)組的大小,在數(shù)組創(chuàng)建的時(shí)候:
names = Array.new(20)
數(shù)組 names 現(xiàn)在有20個(gè)元素的大小或長(zhǎng)度。您可以返回一個(gè)數(shù)組的大小尺寸或長(zhǎng)度的方法:
#!/usr/bin/rubynames = Array.new(20)puts names.size # This returns 20puts names.length # This also returns 20
這將產(chǎn)生以下結(jié)果:
2020
可以指定一個(gè)值數(shù)組中的每個(gè)元素如下:
#!/usr/bin/rubynames = Array.new(4, "mac")puts "#{names}"這將產(chǎn)生以下結(jié)果:
macmacmacmac
還可以使用用new塊,塊會(huì)計(jì)算填充每個(gè)元素:
#!/usr/bin/rubynums = Array.new(10) { |e| e = e * 2 }puts "#{nums}"這將產(chǎn)生以下結(jié)果:
024681012141618
還有另一種方法,數(shù)組,[]。它的工作原理是這樣的:
nums = Array.[](1, 2, 3, 4,5)
另一種形式的數(shù)組創(chuàng)建如下:
nums = Array[1, 2, 3, 4,5]
內(nèi)核模塊Ruby的核心,有一個(gè)數(shù)組的方法,只接受一個(gè)參數(shù)。這里的方法范圍內(nèi)創(chuàng)建一個(gè)數(shù)組的數(shù)字作為參數(shù):
#!/usr/bin/rubydigits = Array(0..9)puts "#{digits}"這將產(chǎn)生以下結(jié)果:
0123456789
數(shù)組內(nèi)置的方法:
我們需要有Array對(duì)象調(diào)用數(shù)組方法的一個(gè)實(shí)例。正如我們所看到的,下面是Array對(duì)象的方式來創(chuàng)建一個(gè)實(shí)例:
Array.[](...) [or] Array[...] [or] [...]
這將返回一個(gè)新數(shù)組填充給定的對(duì)象?,F(xiàn)在使用創(chuàng)建的對(duì)象,我們可以調(diào)用任何可用實(shí)例方法。例如:
#!/usr/bin/rubydigits = Array(0..9)num = digits.at(6)puts "#{num}"這將產(chǎn)生以下結(jié)果:
6
例如:
試試下面的例子來收集各種數(shù)據(jù)。
a = [ "a", "b", "c" ]n = [ 65, 66, 67 ]puts a.pack("A3A3A3") #=> "a b c "puts a.pack("a3a3a3") #=> "a/000/000b/000/000c/000/000"puts n.pack("ccc") #=> "ABC"這將產(chǎn)生以下結(jié)果:
a b cabcABC
上文就是Ruby中數(shù)組的使用方法,如何才能更好地利用這些功能,需要我們對(duì)其進(jìn)行學(xué)習(xí)和利用。
新聞熱點(diǎn)
疑難解答
圖片精選