迭代器有哪些實(shí)際的應(yīng)用
作者:佚名 時(shí)間:2012-06-11 分享到:
迭代器(主要是內(nèi)部迭代器,當(dāng)然偶爾也會(huì)有外部迭代器)在ruby代碼中是如此廣泛地被使用,以至于我都不知道應(yīng)該從何說起,ruby的數(shù)組實(shí)際上還除each以外的另外兩個(gè)內(nèi)部代理器,reerse_each從數(shù)組的底部逆向遍歷數(shù)組中的元素,而each_index調(diào)用傳入的代碼塊時(shí)提供的是每個(gè)元素的索引而不是元素本身。
string類有一個(gè)each方法用以遍歷字符串中的每一行(是的,是每一行,而不是每一個(gè)字符以及each_byte方法)。字符串也有一個(gè)出類拔萃的each方法,這個(gè)方法接受一個(gè)正則表達(dá)式并遍歷字符串中每個(gè)滿足這個(gè)表達(dá)式條件的片段。例如,我們?cè)谝粋(gè)眾所周知的繞口令中查詢每一個(gè)以字母開頭的單詞。