Common data structures

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

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"] ...

Get Mastering the Nmap Scripting Engine now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.