比較內部迭代器和外部迭代器
作者:佚名 時間:2012-06-11 分享到:
雖然內部迭代器和外部迭代碼能完成遍歷一個集合的相同工作,但是它們在實際使用中還是有不同之處的,外部迭代器當然具備一些優勢,例如,當你使用一個外部迭代器時,是使用迭代器的客戶在控制這個迭代器,而在使用內部迭代器時,你只有等訪問下個元素的條件全部成熟之后才能調用next.相反,在使用內部迭代器時,這個集合會敬業地將你傳入的代碼塊施用于一個又一個的子元素上.
在大多數情況下,這種差異是無關緊要的,但是,比如當你想要將兩個排序過的數組合并成一個自我排序的數組時,這種合并在使用類似于arrayinterator這樣的外部迭代器的情況下就很簡單,我們只需要為這兩個輸入的數組創建一個迭代器,然后通過持續地將兩個數組中的最小值加入輸出數組的方式就可以實現.
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/news/20151126/n144.html