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

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

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
主站蜘蛛池模板: 国产成人综合网亚洲欧美在线 | 欧美一级视频在线观看 | 好看的亚洲视频 | 国产欧美日韩综合二区三区 | 国产一级视频久久 | 手机看片福利盒子久久 | 亚洲人成网站在线观看青青 | 国产香蕉视频在线观看 | 国产精品女主播自在线拍 | 成人精品视频 成人影院 | 韩国三级日本三级香港三级黄 | 成人免费播放 | 毛片免费全部免费观看 | 亚洲精品网址 | 四虎影视黄色 | japonensis日本护士18 | 青青青在线视频播放 | 日本888xxxx| 国产黄频在线观看 | 国产99视频精品免视看9 | 国产男人天堂 | 国产91精品露脸国语对白 | 91caoporm在线进入| 男gaygays免费网站多人 | 思思99热久久精品在2019线 | 91高清国产视频 | 欧美人妖另类性hd | 色就色欧美综合偷拍区a | 欧美日韩一区二区综合在线视频 | 精品视频99| 男女男精品视频网站 | 小兰被扒开内裤露出p | 午夜片神马影院福利 | 国产乱码免费卡1卡二卡3卡四 | 青青草原伊人网 | 国内老司机精品视频在线播出 | 91啦在线视频 | 日本一区视频在线 | 无码射肉在线播放视频 | 国产精品成人一区二区 | 久久电影精品久久99久久 |