Lua - Các kiểu dữ liệu
Lua là một ngôn ngữ được nhập động, vì vậy các biến không có kiểu, chỉ có các giá trị mới có kiểu. Giá trị có thể được lưu trữ trong các biến, được truyền dưới dạng tham số và trả về dưới dạng kết quả.
Trong Lua, mặc dù chúng ta không có kiểu dữ liệu biến đổi, nhưng chúng ta có kiểu cho các giá trị. Dưới đây là danh sách các kiểu dữ liệu cho các giá trị.
Sr.No | Loại giá trị & Mô tả |
---|---|
1 | nil Được sử dụng để phân biệt giá trị có một số dữ liệu hoặc không có dữ liệu (nil). |
2 | boolean Bao gồm giá trị true và false. Thường được sử dụng để kiểm tra tình trạng. |
3 | number Đại diện cho các số thực (dấu phẩy động chính xác kép). |
4 | string Đại diện cho mảng ký tự. |
5 | function Đại diện cho một phương thức được viết bằng C hoặc Lua. |
6 | userdata Biểu diễn dữ liệu C tùy ý. |
7 | thread Đại diện cho các luồng thực thi độc lập và nó được sử dụng để triển khai các coroutines. |
số 8 | table Biểu diễn các mảng thông thường, bảng ký hiệu, tập hợp, bản ghi, đồ thị, cây, v.v. và triển khai các mảng kết hợp. Nó có thể giữ bất kỳ giá trị nào (ngoại trừ nil). |
Loại chức năng
Trong Lua, có một hàm gọi là 'kiểu' cho phép chúng ta biết kiểu của biến. Một số ví dụ được đưa ra trong đoạn mã sau.
print(type("What is my type")) --> string
t = 10
print(type(5.8*t)) --> number
print(type(true)) --> boolean
print(type(print)) --> function
print(type(nil)) --> nil
print(type(type(ABC))) --> string
Khi bạn xây dựng và thực thi chương trình trên, nó tạo ra kết quả sau trên Linux:
string
number
boolean
function
nil
string
Theo mặc định, tất cả các biến sẽ trỏ đến nil cho đến khi chúng được gán giá trị hoặc khởi tạo. Trong Lua, chuỗi không và chuỗi rỗng được coi là đúng trong trường hợp kiểm tra điều kiện. Do đó, bạn phải cẩn thận khi sử dụng các phép toán Boolean. Chúng ta sẽ biết nhiều hơn cách sử dụng các loại này trong các chương tiếp theo.