function maximum (a)
local mi = 1 -- maximum index
local m = a[mi] -- maximum value
for i,val in ipairs(a) do
if val > m then
mi = i
m = val
end
end
return m, mi
end
print(maximum({8,10,23,12,5}))--> 23 3
真的但是wth是这个吗?我不明白?有人可以解释这个例子吗?就是这样,[[令人困惑,在lua编程第一版总是做出一些艰难的例子bruh:/
a
中的表。[该函数使用a
函数从表中返回索引和值(临时存储在ipairs
和i
中)对表val
中的每个值进行迭代(循环)。
在循环内,将表中的值与m
进行比较,如果val
大于m
,则将m
的值指定为val
,将mi
的值指定为i
C0]。
然后函数返回两个值m
和mi
。
简而言之,该函数的作用是在作为参数传递的表中找到最大值及其索引。