簡要說明Ruby中的迭代器

2022-09-26 05:33:13 字數 1094 閱讀 2766

迭代器是集合支援的方法。儲存一組資料成員的物件稱為集合。在 ruby 中,陣列和雜湊可以稱之為集合。

迭代器返回集合的所有元素,乙個接著乙個。在這裡我們將討論兩種迭代器,each 和 collect。

ruby each 迭代器

each 迭代器返回陣列或雜湊的所有元素。

語法collection.each do |variabl程式設計客棧e|

code

end為集合中的每個元素執行 code。在這裡,集合可以是陣列或雜湊。

例項#!/usr/bin/ruby

ary = [1,2,3,4,5]

ary.each do |i|

puts i

end這將產生以下結果:

12345

each 迭代器總是與乙個塊關聯。它向塊返回陣列的每個值,乙個接著乙個。值被儲存在變數 i 中,然後顯示在螢幕上。

ruby collect 迭代器

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

語法collection = collection.collect

collect 方法不需要總是與乙個塊關聯。collect 方法返回整個集合,不管它是陣列或者是雜湊。

例項#!/usr/bin/ruby

a = [1,2,3,4,5]

b = array.new

b = a.collect

puts b

這將產生以下結果:

12345

注意:collect 方法不是陣列間進行複製的正確方式。這裡有另乙個稱為 clone 的方法,用於複製乙個陣列到另乙個陣列。

當您想要對每個值進行一些操作以便獲得新的陣列時,您通常使用 collect 方法。例如,下面的**會生成乙個陣列,其值是 a 中每個值的 10 程式設計客棧倍。

#!/usr/bin/ruby

a = [1,2,3,4,www.cppcns.com5]

b = a.collect

puts b

這將產生以下結果:

102030

4050

本文標題: 簡要說明ruby中的迭代器

本文位址: /jiaoben/ruby/122483.html

快取的簡要說明

這幾天看了快取的知識,感覺沒什麼頭緒,不過還是整理了大概的學習思路,希望能幫助到大家。後續會出詳細的講解 一 什麼是快取1 cache 是高速緩衝儲存器 一種特殊的儲存器子系統,其中複製了頻繁使用的資料以利於快速訪問 2 凡是位於速度相差較大的兩種硬體 軟體之間的,用於協調兩者資料傳輸速度差異的結構...

單層感知器簡要說明

單層感知器演算法是神經網路演算法中結構最簡單的模型,作為一種線性分類器,它可以對兩種型別進行線性分類。感知器是生物神經細胞的簡單抽象,是神經網路的原型,是以最簡單的方式模擬人類神經元的演算法。神經元圖示 演算法模型圖示 xi 表示輸入訊號,是根據預先定義的特徵工程的非線性轉換,w iw i wi 表...

sprintf函式的簡要說明

關於sprintf函式的描述是 sprintf指的是字串格式化命令,主要功能是把格式化的資料寫入某個字串中。sprintf 是個 變參函式。使用sprintf 對於寫入buffer的字元數是沒有限制的,這就存在了buffer溢位的可能性。標頭檔案是stdio.h。函式原型 int sprintf c...