24 NİSAN 2010, CUMARTESİ
Nasıl bir Lua tabloda giriş sayısı?
Sesler gibi, "senin için Google'dan izin" soru, ama bir cevap bulamıyorum nedense. #
Lua operatör sadece tamsayı tuşları ile girişler sayar, table.getn
:
tbl = {}
tbl["test"] = 47
tbl[1] = 48
print(#tbl, table.getn(tbl)) -- prints "1 1"
count = 0
for _ in pairs(tbl) do count = count 1 end
print(count) -- prints "2"
Nasıl numarasını alabilirimtümonları sayma olmadan girdiler?
CEVAP
24 NİSAN 2010, CUMARTESİ
Zaten tek yolu pairs(..)
ile bütün tablo yineleme yapmak için soru çözümü.
function tablelength(T)
local count = 0
for _ in pairs(T) do count = count 1 end
return count
end
Ayrıca, dikkat edin "#" operatörü tanımı biraz daha karmaşık. Bana bu tablo alarak göstermektedir
t = {1,2,3}
t[5] = 1
t[9] = 1
El kitabına göreherhangi bir3, 5 ve 9 #t
için geçerli bir sonuç. Kullanmak için tek mantıklı yolu nil değerler olmadan bir bitişik bölümü dizileri ile.
Bunu Paylaş:
Nasıl web tarayıcı otomatik tamamlama ...
Nasıl yeniden yükleme yapabilirim .çık...
Nasıl giriş alanına odaklanmak ayarlam...
Nasıl VS2013 başvuru sayısı, gizlemek ...
Nasıl gıt sayısı işlemek için?...