婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Ruby 迭代器知識(shí)匯總

Ruby 迭代器知識(shí)匯總

熱門標(biāo)簽:北京語(yǔ)音電銷機(jī)器人價(jià)格 武漢呼叫中心外呼系統(tǒng)線路商 邯鄲外呼調(diào)研線路 浦東上海400開(kāi)頭的電話申請(qǐng) 開(kāi)封百應(yīng)電銷機(jī)器人聯(lián)系方式 真人語(yǔ)音電銷機(jī)器人系統(tǒng) 電話機(jī)器人電話卡封號(hào)怎么辦 買了外呼系統(tǒng)不想用了怎么辦 樂(lè)昌電話機(jī)器人

簡(jiǎn)單來(lái)說(shuō):迭代(iterate)指的是重復(fù)做相同的事,所以迭代器(iterator)就是用來(lái)重復(fù)多次相同的事。

迭代器是集合支持的方法。存儲(chǔ)一組數(shù)據(jù)成員的對(duì)象稱為集合。在 Ruby 中,數(shù)組(Array)和哈希(Hash)可以稱之為集合。

迭代器返回集合的所有元素,一個(gè)接著一個(gè)。在這里我們將討論兩種迭代器,each 和 collect。

Ruby each 迭代器

each 迭代器返回?cái)?shù)組或哈希的所有元素。

語(yǔ)法

collection.each do |variable|
  code
end

為集合中的每個(gè)元素執(zhí)行 code。在這里,集合可以是數(shù)組或哈希。

#!/usr/bin/ruby
 
ary = [1,2,3,4,5]
ary.each do |i|
  puts i
end

以上實(shí)例運(yùn)行輸出結(jié)果為:

1
2
3
4
5

each 迭代器總是與一個(gè)塊關(guān)聯(lián)。它向塊返回?cái)?shù)組的每個(gè)值,一個(gè)接著一個(gè)。值被存儲(chǔ)在變量 i 中,然后顯示在屏幕上。

Ruby collect 迭代器

collect 迭代器返回集合的所有元素。

語(yǔ)法

collection = collection.collect

collect 方法不需要總是與一個(gè)塊關(guān)聯(lián)。collect 方法返回整個(gè)集合,不管它是數(shù)組或者是哈希。

實(shí)例

#!/usr/bin/ruby
 
a = [1,2,3,4,5]
b = Array.new
b = a.collect{ |x|x }
puts b

以上實(shí)例運(yùn)行輸出結(jié)果為:

1
2
3
4
5

注意:collect 方法不是數(shù)組間進(jìn)行復(fù)制的正確方式。這里有另一個(gè)稱為 clone 的方法,用于復(fù)制一個(gè)數(shù)組到另一個(gè)數(shù)組。

當(dāng)您想要對(duì)每個(gè)值進(jìn)行一些操作以便獲得新的數(shù)組時(shí),您通常使用 collect 方法。例如,下面的代碼會(huì)生成一個(gè)數(shù)組,其值是 a 中每個(gè)值的 10 倍。

#!/usr/bin/ruby
 
a = [1,2,3,4,5]
b = a.collect{|x| 10*x}
puts b

以上實(shí)例運(yùn)行輸出結(jié)果為:

10
20
30
40
50

補(bǔ)充

Java需要把Map轉(zhuǎn)化成List類型的容器才能使用迭代器,但Ruby有直接針對(duì)Map的迭代器:

sum = 0
cutcome = {"block1" => 1000, "book2" => 1000, "book3" => 4000}
cutcome.each{|item, price| sum += price}
print "sum = " + sum.to_s

甚至還可以這樣:

sum = 0
cutcome = {"block1" => 1000, "book2" => 1000, "book3" => 4000}
cutcome.each{|pair| sum += pair[1]}
print "sum = " + sum.to_s

以上就是Ruby 迭代器知識(shí)匯總的詳細(xì)內(nèi)容,更多關(guān)于Ruby 迭代器的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • Ruby中Block和迭代器的使用講解
  • 舉例講解Ruby中迭代器Iterator的用法
  • 簡(jiǎn)要說(shuō)明Ruby中的迭代器
  • Ruby迭代器的7種技巧分享
  • Ruby中的迭代器詳解
  • js 數(shù)組實(shí)現(xiàn)一個(gè)類似ruby的迭代器
  • ruby 迭代器使用方法

標(biāo)簽:鄂州 淄博 自貢 石嘴山 六安 松原 河北 宜春

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Ruby 迭代器知識(shí)匯總》,本文關(guān)鍵詞  Ruby,迭代,器,知識(shí),匯總,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ruby 迭代器知識(shí)匯總》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Ruby 迭代器知識(shí)匯總的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 赫章县| 蓬安县| 富宁县| 秀山| 高台县| 大安市| 常山县| 申扎县| 曲阳县| 齐齐哈尔市| 垦利县| 土默特左旗| 色达县| 新昌县| 保山市| 婺源县| 河间市| 保康县| 丰台区| 乐亭县| 墨脱县| 高要市| 西平县| 新郑市| 上饶市| 白银市| 广东省| 平遥县| 邛崃市| 新民市| 江孜县| 监利县| 祥云县| 郴州市| 淳安县| 肥西县| 射阳县| 博爱县| 平舆县| 利津县| 友谊县|