美文网首页
Lua习题分析(一):table、‘#’、“ipairs”和“p

Lua习题分析(一):table、‘#’、“ipairs”和“p

作者: 木雁之 | 来源:发表于2017-11-04 12:10 被阅读0次

我们先看一下这次的题目,这是一道根据内容写输出的题目:

local data = {[0] = 'hello', [1] = 'world', [2] = 'xuerbuhuan'}
print(#data)

for k, v in ipairs(data) do
    print(k, v)
end

for k, v in pairs(data) do
    print(k, v)
end 

这道题目考察以下两个方面:

1 用‘#’取table的长度

我们知道,table的默认索引是从1开始的。‘#’符所取的长度,是从索引1开始,直到遇到第一个nil value终止

2 “ipairs”和“pairs”的区别

ipairs返回一个迭代器函数、table或者0;它会从key=1开始迭代table中的键值对,直到遇到第一个nil value

pairs会迭代table中所有键值对;如果table中含有元方法__pairs,返回它的前三个结果,否则返回函数next,table,nil。

因此,这段代码的输出是:

2
1   world
2   xuerbuhuan
0   hello
2   xuerbuhuan
1   world

相关文章

  • Lua习题分析(一):table、‘#’、“ipairs”和“p

    我们先看一下这次的题目,这是一道根据内容写输出的题目: 这道题目考察以下两个方面: 1 用‘#’取table的长度...

  • Lua扩展

    lua作为配置文件使用 使用LUA API分析这个文件,并获取width和height table操作lua 5....

  • lua的pairs和ipairs

    一句话:pairs用来遍历字典,ipairs用来遍历数组。看如下示例: `function testpair()l...

  • Lua小计,ipairs 和 pairs

    最近重新拾起了lua,发现语法几乎忘光了,记录一下这俩的遍历的区别。话不多说,上代码 输出为 从上图可以看出,ip...

  • Lua base ipairs()

    前言 今天来看一个老朋友,这个函数在我们使用刚开始学习lua的时候基本就使用过,通常就是在遍历table的时候使用...

  • 学习常用链接

    //Lua Lua table详解 Lua 元表详解 云风博客 //Unity Unity知识点 栈和队列 Uni...

  • lua和c的初始

    lua和c的交互包括:c访问lua的变量、c访问lua的table、c调用lua的方法、lua调用c的函数 参考链...

  • 2017.5.25

    lua学习总结:数据结构: 使用Lua实现链表(单向链表和双向链表),队列 使用Lua保存图,用table保存,每...

  • 【Lua】(3)一些常用函数

    print(...)函数打印内容。 pairs(t)和ipairs(t)函数pairs()和ipairs()都可以...

  • lua 拾遗一:pairs

    pairs 和ipairs require和dofile pairs 和 ipairs 结果是:(是没有顺序的)1...

网友评论

      本文标题:Lua习题分析(一):table、‘#’、“ipairs”和“p

      本文链接:https://www.haomeiwen.com/subject/kuufmxtx.html