【问题标题】:If item is in Lua array [duplicate]如果项目在 Lua 数组中[重复]
【发布时间】:2015-07-20 11:47:26
【问题描述】:

如何检查一个单词是否不在数组中...示例:

fruits = { 'apple', 'banana' }
value = "carrot"
if not value == fruits then
  print ( value .. " is not a fruit" )
end

或类似的东西?我更喜欢纯 Lua。

【问题讨论】:

  • 对不起,我不同意。 “表”包含的值与“数组”略有不同。因为对于这个问题,我可以给出两个建议,但对于表格来说,这些建议都不可接受。 1.如果是硬编码数组,比如config,可以这样:({apple = 1, banana = 1})[value]。 2.如果是数组,有一个相当漂亮但效率低下的方法:utils.swapKV(array)[value]

标签: arrays lua lua-table


【解决方案1】:

直接方式:

local found = false
for _, v in ipairs(fruits) do
  if v == value then
    found = true
    break
  end
end

if not found then
  print ( value .. " is not a fruit" )
end

【讨论】:

    猜你喜欢
    • 2020-09-30
    • 1970-01-01
    • 1970-01-01
    • 2016-11-02
    • 2017-09-27
    • 2019-09-06
    • 2019-01-27
    • 2016-06-14
    • 2018-05-30
    相关资源
    最近更新 更多