找回密码
 register

QQ登录

只需一步,快速开始

[*LUA4*] [Lua基础]foreachi函数使用说明

[复制链接]

[*LUA4*] [Lua基础]foreachi函数使用说明

[复制链接]
Waylee

主题

0

回帖

7744

积分

仙帝

积分
7744
Waylee 2024-11-22 20:09 | 显示全部楼层 |阅读模式 | Google Chrome | Windows 10

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×

Lua 4.0 中,foreachi 是一个内置函数,专门用于遍历表(table)的数值索引部分(从索引 1 开始,按顺序访问到 getn(table) 返回的最大数值索引)。这是对 foreach 函数的一个特化版本,专注于 数组形式的表。

功能与使用场景

  • 针对表中按 数字索引 存储的数据进行操作。
  • 按索引的顺序从小到大遍历。
  • 如果传递的函数在某次调用中返回非 nil 值,则终止遍历并返回该值。

这种设计非常适合处理类似数组的数据结构,尤其在 Lua 4.0 中,数组和字典(散列表)共存于同一个表。

官方定义与实现

官方文档给出的Lua代码实现如下:

function foreachi (t, f)
  for i = 1, getn(t) do
    local res = f(i, t[i])
    if res then return res end
  end
end
  • 参数说明
    • t:目标表。
    • f:函数,该函数会依次接收当前的索引和对应的值。
  • 行为
    • 遍历表 t 的数值索引部分,从索引 1 开始,到 getn(t) 返回的最大数值索引结束。
    • 对于每个索引 i 和对应值 t[i],调用函数 f(i, t[i])
    • 如果函数 f  返回非nil值,则停止遍历,并将该返回值作为foreachi` 的结果。
      付费看帖
      剩余 63% 内容需要支付 10.00 金币 后可完整阅读
      支持付费阅读,激励作者创作更好的作品。

雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |网站地图|天天打卡

GMT+8, 2024-11-23 20:07 , Processed in 0.076476 second(s), 8 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

快速回复 返回顶部 返回列表