Recherche…


Rechercher un article dans une liste

Il n'y a pas de moyen intégré pour rechercher une liste pour un élément particulier. Cependant, la programmation en Lua montre comment vous pouvez créer un ensemble pouvant vous aider:

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

Ensuite, vous pouvez inscrire votre liste dans l’ensemble et tester votre adhésion:

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

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

Utiliser une table comme un ensemble

Créer un ensemble

 local set = {} -- empty set

Créez un ensemble avec des éléments en définissant leur valeur sur 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'

Ajouter un membre à l'ensemble

ajouter un membre en définissant sa valeur sur true

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

Supprimer un membre de l'ensemble

  set.apple = nil

Utiliser nil au lieu de false pour supprimer 'apple' de la table est préférable car cela rendra les éléments itératifs plus simples. nil supprime l'entrée de la table tandis que la valeur false change sa valeur.

Test d'adhésion

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

Itérer sur des éléments dans un ensemble

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


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow