سؤال

أريد أن أعرف كيفية استرداد مجموعة المفاتيح لجدول في لوا.على سبيل المثال، إذا كان لدي الجدول التالي:

tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'

أريد استرداد جدول يبدو كما يلي:

keyset = {1,2,5}
هل كانت مفيدة؟

المحلول

local keyset={}
local n=0

for k,v in pairs(tab) do
  n=n+1
  keyset[n]=k
end

لاحظ أنه لا يمكنك ضمان أي طلب في keyset.إذا كنت تريد المفاتيح مرتبة، فقم بالفرز keyset مع table.sort(keyset).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top