Buscar..


Buscar un artículo en una lista

No hay una forma integrada de buscar una lista para un elemento en particular. Sin embargo, Programación en Lua muestra cómo puedes construir un conjunto que pueda ayudar:

function Set (list)
  local set = {}
  for _, l in ipairs(list) do set[l] = true end
  return set
end

Luego puedes poner tu lista en el Set y probar la membresía:

local items = Set { "apple", "orange", "pear", "banana" }

if items["orange"] then
  -- do something
end

Usando una mesa como un conjunto

Crear un conjunto

 local set = {} -- empty set

Crea un conjunto con elementos estableciendo su valor en true :

 local set = {pear=true, plum=true}

 -- or initialize by adding the value of a variable:
 local fruit = 'orange'
 local other_set = {[fruit] = true} -- adds 'orange'

Añadir un miembro al conjunto.

agrega un miembro estableciendo su valor en true

  set.peach = true
  set.apple = true
  -- alternatively
  set['banana'] = true
  set['strawberry'] = true

Eliminar un miembro del conjunto

  set.apple = nil

Es preferible utilizar nil lugar de false para eliminar 'apple' de la tabla porque hará que los elementos de iteración sean más simples. nil elimina la entrada de la tabla mientras se configura en false cambia su valor.

Prueba de membresía

  if set.strawberry then
      print "We've got strawberries"
  end

Iterar sobre elementos en un conjunto.

 for element in pairs(set) do
     print(element)
 end


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow