In Lua, you will use the table
data type to implement all your data structures. This data type has great features such as the ability to store functions and be dynamically allocated, among many others. Hopefully, after reviewing some common data structures, you will find yourself loving their flexibility.
Tables are very convenient and allow us to implement data structures such as dictionaries, sets, lists, and arrays very efficiently. A table can be initialized empty or with some values:
T1={} --empty table T2={"a","b","c"}
Integer indexes or hash keys can be used to assign or dereference the values in a table. One important thing to keep in mind is that we can have both types in the same table:
t={} t[1] = "hey " t["nmap"] = "hi " --This is valid
To get the number of elements stored in a table, you may prepend the #
operator:
if #users>1 then print(string.format("There are %d user(s) online.", #users)) … --Do something else end