Search…

Biến và Kiểu Dữ Liệu trong Lua

27/09/20203 min read
Giới thiệu biến, kiểu dữ liệu và cách khai báo biến và kiểu dữ liệu trong Lua.

Lua là một ngôn ngữ tự động hóa, nên trong Lua không có khái niệm khai báo kiểu dữ liệu, mỗi dữ liệu lưu trữ một loại dữ liệu của chính nó.

Loại dữ liệu

Các loại dữ liệu trong Lua

Trong Lua có 8 loại dữ liệu cơ bản chính:

  • nil
  • boolean
  • number
  • string
  • userdata
  • function
  • thread
  • table

Khai báo biến trong Lua

Cách khai báo một biến trong Lua.

a = "Hello STDIO"

Tên biến không được bắt đầu bằng 1 con số nhưng vẫn có thể chưa 1 con số trong tên, tên có thể bắt đầu bằng dấu gạch dưới _ và chữ đi theo sau là số.

3 = "invalid variable name"

Đoạn code trên không hợp lệ vì tên biến bắt đầu bằng số.

Quy tắc khai báo 1 biến là:

  • Khai báo tên biến với quy định trên.
  • Theo sau là dấu bằng = để gán dữ liệu.
  • Tiếp theo là dữ liệu. Loại dữ liệu của một biến sẽ được gán tự động tùy theo dữ liệu mà người dùng gán.

nil

Là loại biến mà được tự động gán cho các biến nếu biến đó không có dữ liệu.

Ví dụ:

a
print(a)

Tất cả các biến đều có dữ liệu mặc định là nil, ở đoạn code trên khi print a sẽ nhận được là nil, vì chỉ khai báo nhưng chưa gán giá trị hay dữ liệu cho biến a này.

boolean

Là loại biến chỉ nhận hai giá trị truefalse.

Ví dụ:

Boolean_Var = false

number

Gồm 2 loại dữ liệu chính là integer (số nguyên) và float (số thực).

integer

Integer_Num = 23

float

Float_Num = 6.8

Đối với biết float điều cần lưu ý là trong Lua kiểu dữ liệu float chỉ giới hạn 13 số sau dấu chấm, nếu vượt quá giới hạn Compiler của Lua sẽ tự lấy tới số thứ 13 và dừng tại đó.

Ví dụ:

Float_13_digits = 1,321422345129884 -- Sau dấu chấm có tới 15 số
print(Float_13_digits) -- chỉ in ra màn hình là 1,3214223451298

String

Kiểu String trong Lua là một mảng các ký tự riêng lẻ (char). Đồng thời Lua đã cung cấp nhiều hàm để xử lý với biến kiểu String.

Var_String = "String STDIO"

Table

Kiểu table trong Lua là List các phần tử bao gồm các kiểu dữ liệu khác ngoại trừ nilfunction.

My_Table = {}
My_Table_2 = {1, 2, 8, 7, 12}

Loại biến

Trong Lua có ba loại biến chính là biến Global, Local, Table.

Mặc định với tất cả các biến khai báo sẽ là biến Global, để khai báo 1 biến local phải định danh rõ ràng cho biến đó.

G_Integer_a = 3 --Một biến Global tên là G_Integer_a có dữ liệu là 3 nên kiểu dữ liệu sẽ là kiểu Integer
local Local_String_b = "STDIO" --Một biến được định danh là Local có tên là Local_String_b dữ liệu là "STDIO" nên kiểu dữ liệu sẽ là String

Lưu ý để khai báo một biến local phải sử dụng keyword local trước tên biến bất kì.

Cách khai báo biến

Có thể khai báo và gán liên lục các biến theo tuần tự dữ liệu khác nhau.

Ví dụ:

a, b, c= 3, "Lua", 1.2

Biến a có dữ liệu là 3, biến b có dữ liệu là Lua, biến c có dữ liệu là 1.2 và là kiểu float (số thực).

Đối với ngôn ngữ Lua, có thể gán một hàm cho biến bất kì.

Ví dụ:

a = print --Gán hàm print cho biến a

Vậy bất cứ khi nào gọi biến a với cú pháp như hàm print bình thường vẫn sẽ sử dụng được hàm print thông qua biến a này.

Lua cung cấp hàm typeof(var) để có thể kiểm tra được bất cứ loại biến bất kỳ nào chỉ cần truyền vào tham số var với tên biến và print ra màn hình.

Bài chung series

IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024