Ricerca…


Cerca un elemento in un elenco

Non esiste un modo integrato per cercare un elenco per un particolare oggetto. Tuttavia, la programmazione in Lua mostra come potresti creare un set che può aiutare:

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

Quindi puoi mettere la tua lista nel Set e testare l'iscrizione:

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

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

Usare una tabella come un insieme

Crea un set

 local set = {} -- empty set

Crea un set con elementi impostando il loro valore su 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'

Aggiungi un membro al set

aggiungi un membro impostando il suo valore su true

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

Rimuovi un membro dal set

  set.apple = nil

È preferibile utilizzare nil anziché false per rimuovere "apple" dalla tabella poiché renderà più semplici gli elementi iterating. nil cancella la voce dalla tabella mentre imposta su false suo valore.

Test di appartenenza

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

Scorrere gli elementi in un set

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


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow