一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Lua - Lua基礎迭代器的使用實例

Lua基礎迭代器的使用實例

2020-05-09 11:00Engineer-Bruce_Yang Lua

今天小編就為大家分享一篇關于Lua基礎迭代器的使用實例,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

官方的文檔說:

迭代器(iterator)是一種對象,它能夠用來遍歷標準模板庫容器中的部分或全部元素,每個迭代器對象代表容器中的確定的地址

Lua中迭代器是一種支持指針類型的結構,它可以遍歷集合的每一個元素。

迭代器的種類主要有:泛型for迭代器、無狀態的迭代器、多狀態的迭代器

下面看幾個例子:

ipairs.lua

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
name = {"YYX","HJZ"};
--以下稱為泛型for迭代器
--其中key表示索引值,從1開始計算
--value表示數組中的元素
--ipairs表示迭代函數
for key,value in ipairs(name) do
 print(key,value);
end
--實現一個自加算法無狀態的迭代函數
function NumAdd(count,var)
 --定義一個局部變量_count并初始化為0
 local _count = 0 ;
 --參數count表示該函數需要迭代的次數
 --其實這里的思路有點像C的遞歸
 --實現遞歸需要有條件退出,有始有終
 if(var < count)
 then
     var = var + 1 ;
  return var , var + _count ;
 end
end
--輸出迭代函數的值,i表示迭代次數,n表示迭代后的數值
for i , n in NumAdd,5,0
do
  print(i,n);
end
array = {1,2,3,4,5,6,7,8,9,10};
function array_put(length , var)
 --獲取Array的長度
 length = #array ;
 --如果傳入需要遍歷的值小于Array的長度,就遍歷
 if(var < length)
 then
   var = var + 1 ;
   return var , array[var] ;
 end
end
for i , n in array_put,10,0
do
 print(i,n);
end

解釋運行:

lua ipairs.lua

運行結果:

1       YYX
2       HJZ
1       1
2       2
3       3
4       4
5       5
1       1
2       2
3       3
4       4
5       5
6       6
7       7
8       8
9       9
10      10

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

原文鏈接:https://blog.csdn.net/morixinguan/article/details/75305406

延伸 · 閱讀

精彩推薦
  • LuaLua簡介、編譯安裝教程及變量等語法介紹

    Lua簡介、編譯安裝教程及變量等語法介紹

    這篇文章主要介紹了Lua簡介、編譯安裝教程及變量等語法介紹,本文同時講解了lua注釋語法、Lua命令行方式等內容,需要的朋友可以參考下 ...

    junjie3632020-04-14
  • LuaLua中的元方法__newindex詳解

    Lua中的元方法__newindex詳解

    這篇文章主要介紹了Lua中的元方法__newindex詳解,本文講解了查詢與更新、監控賦值、通過table給另一個table賦值等內容,需要的朋友可以參考下 ...

    笨木頭8872020-04-09
  • Lua深入探究Lua中的解析表達式

    深入探究Lua中的解析表達式

    這篇文章主要介紹了深入探究Lua中的解析表達式,對于其語法部分的說明和示例都超詳細,極力推薦此文!需要的朋友可以參考下 ...

    腳本之家3542020-05-05
  • LuaLua中計算、執行字符串中Lua代碼的方法

    Lua中計算、執行字符串中Lua代碼的方法

    這篇文章主要介紹了Lua中計算、執行字符串中Lua代碼的方法,類似JavaScript中eval函數的功能,在Lua中也可以實現,需要的朋友可以參考下 ...

    腳本之家6322020-04-30
  • LuaLua中table庫函數方法介紹

    Lua中table庫函數方法介紹

    這篇文章主要介紹了Lua中table庫函數方法介紹,本文講解了concat、insert、maxn、remove、sort、foreachi等方法,需要的朋友可以參考下 ...

    腳本之家2502020-04-17
  • LuaLua實現__add方法重載示例

    Lua實現__add方法重載示例

    這篇文章主要介紹了Lua實現__add方法重載示例,本文直接給出實現代碼,需要的朋友可以參考下 ...

    腳本之家7452020-04-24
  • LuaLua和C語言的交互詳解

    Lua和C語言的交互詳解

    這篇文章主要介紹了Lua和C語言的交互詳解,Lua和C語言通過棧完成交互,本文結合代碼實例詳細講解了交互的方法,需要的朋友可以參考下 ...

    果凍想3702020-04-14
  • LuaLua教程(二):基礎知識、類型與值介紹

    Lua教程(二):基礎知識、類型與值介紹

    這篇文章主要介紹了Lua教程(二):基礎知識、類型與值介紹,本文講解了Hello World程序、代碼規范、全局變量、類型與值等內容,需要的朋友可以參考下 ...

    腳本之家5922020-04-28
主站蜘蛛池模板: gogort人体的最新网站 | 亚洲乱码一区二区三区国产精品 | 美女张开腿让我了一夜 | 男女男精品网站 | 久久黄视频 | 精品国产91久久久久 | 国产高清国内精品福利 | 国产麻豆在线观看网站 | 色国产视频 | 1769在线观看 | 亚洲国产精品一区二区久久 | 经典千人斩一区二区视频 | 777奇米影视一区二区三区 | 床戏小说 | 精品在线91 | 忘忧草高清 | 国产亚洲精品自在线亚洲情侣 | 久久精品一卡二卡三卡四卡视频版 | 亚洲国产第一区二区香蕉日日 | 四虎精品永久在线网址 | 倩女还魂在线观看完整版免费 | 四虎永久在线精品波多野结衣 | 精品国产一区二区三区久久久蜜臀 | 无限时间看片在线观看 | 国产成人夜色影视视频 | 草莓视频网站18勿进 | 艹的好爽| 国产日韩欧美视频 | 青草香蕉精品视频在线观看 | 免费一区二区视频 | www免费插插视频 | 精品亚洲综合久久中文字幕 | 欧美va在线高清 | 污黄在线观看 | 亚洲国产精品久久网午夜小说 | 国产成人在线免费视频 | 亚洲国产成人久久午夜 | 亚洲欧美日韩在线观看看另类 | 日本孕妇大胆孕交 | 欧美一级片免费看 | 好 舒服 好 粗 好硬 好爽 |