Lua迭代器
導讀 | 迭代器(iterator)是一種物件,它能夠用來遍歷標準模板庫容器中的部分或全部元素,每個迭代器物件代表容器中的確定的地址。 |
在 Lua 中迭代器是一種支援指標型別的結構,它可以遍歷集合的每一個元素。Lua 中的迭代器可以分為泛型 for 迭代器、無狀態的迭代器和多狀態的迭代器。
泛型for迭代器
說明
泛型 for 在自己內部儲存迭代函式,實際上它儲存三個值:迭代函式、狀態常量、控制變數。泛型 for 迭代器提供了集合的 key/value 對。
語法
for k, v in pairs(t) do print(k, v) end
案例
泛型for迭代器
泛型 for 迭代器遍歷陣列
#!/usr/bin/lua print("haicoder()\n") array = {"Hello", "HaiCoder", "Lua"} for k, v in ipairs(array) do print(string.format("Key = %d, Value = %s", k, v)) end
程式執行,控制檯輸出,如下圖:
我們可以看到,我們使用了泛型 for 迭代器遍歷了陣列元素。
Lua迭代器總結
迭代器(iterator)是一種物件,它能夠用來遍歷標準模板庫容器中的部分或全部元素,每個迭代器物件代表容器中的確定的地址。
在 Lua 中迭代器是一種支援指標型別的結構,它可以遍歷集合的每一個元素。Lua 中的迭代器可以分為泛型 for 迭代器、無狀態的迭代器和多狀態的迭代器。
泛型 for 在自己內部儲存迭代函式,實際上它儲存三個值:迭代函式、狀態常量、控制變數。泛型 for 迭代器提供了集合的 key/value 對。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2907544/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Lua有狀態迭代器
- 迭代器
- Python進階:迭代器與迭代器切片Python
- 迭代器 iterator
- Python迭代器Python
- Ruby迭代器
- Iterator迭代器
- 迭代器模式模式
- TypeScript迭代器TypeScript
- Python 迭代器Python
- 可迭代物件、迭代器、生成器物件
- Iterator與Iterable(迭代器與可迭代)
- Python可迭代的物件與迭代器Python物件
- 從迭代器模式到迭代協議模式協議
- 23. 迭代器
- javascript 之迭代器JavaScript
- 迭代器總結
- 迭代器的 ConcurrentModificationExceptionException
- 迭代器模式(Iterator)模式
- Iterables和迭代器
- 手寫自定義迭代器,秒懂迭代器底層原理
- Python之可迭代物件、迭代器、生成器Python物件
- 不用for迭代 --手工訪問迭代器中的元素.
- C++之迭代器C++
- 迭代器,生成器
- 迭代器、生成器
- 協程與迭代器
- 深度理解Python迭代器Python
- python中的迭代器Python
- 淺談Java迭代器Java
- List分組迭代器
- 【java】【集合】迭代器IteratorJava
- 使用自定義lua解析管理器呼叫lua指令碼中的table指令碼
- 前端面試複習2:迭代器,生成器與非同步迭代器前端面試非同步
- 你知道JavaScript中的可迭代物件與迭代器嗎JavaScript物件
- 深入淺出Lua虛擬機器虛擬機
- 設計模式(十六)迭代器設計模式
- 行為型:迭代器模式模式