Một biểu tượng操作 là một biểu tượng cho thực hiện một hoạt động hoặc đánh giá điều kiện.
Logic
Các hàm trở lại giá trị tùy thuộc vào các giá trịBoolean của các đại lý được cung cấp. Nếu một hàm không false hoặc nil , thì hàm đánh giá nó như tru
Người vận hành | Mô tả |
---|---|
và | Đánh giá là true chỉ nếu cả hai điều kiện đều đúng |
hoặc | Đánh giá là true nếu điều kiện nào đó là true |
không | Đánh giá ngược lại với điều kiện |
và
The binary operator and 返回 một trong hai lý do. Nếu lý do đầu tiên đánh giá đến true thì nó sẽ trả lại lý do thứ hai. Ngược lại, nó sẽ trả lại lý do đầu tiên.
print(4 and 5) -- 5print(nil and 12) -- trươngprint(false and 12) -- đúngprint(false and true) -- đúngprint(false and false) -- đúngprint(true and false) -- đúngprint(true and true) -- true
Bạn có thể sử dụng and để kiểm tra nhiều điều kiện trong cấu trúc điều khiển như if 2> 4> while4> . Ví dụ, sau đây là 7> if
local pasta = truelocal tomatoSauce = trueif pasta == true and tomatoSauce == true thenprint("We have spaghetti dinner")elseprint("Something is missing...")end-- Output: We have spaghetti dinner
hoặc
The binary operator or returns one of the two arguments. If the first argument evaluates to true , then it returns the first argument. Otherwise, it returns the second argument.
local y = x or 1print(y) -- 1 vì x không tồn tại và do đó là zerolocal d = falselocal e = d or 1print(e) -- 1 vì d là saiprint(4 or 5) -- 4print(nil or 12) -- 12print(false or 12) -- 12print(false or true) -- đúngprint(false or false) -- đúngprint(true or false) -- đúngprint(true or true) -- true
Bạn có thể sử dụng or để thực hiện các kiểm tra logic phức tạp trong cấu trúc điều khiển. Ví dụ, các điều kiện sau đây if — 1> then1> kiểm tra xem hai điều kiện có đúng hay không 4> hoặc4> mộ
local pasta = falselocal tomatoSauce = truelocal garlicBread = trueif (pasta == true and tomatoSauce == true) or garlicBread == true thenprint("We have either spaghetti dinner OR garlic bread")elseprint("Something is missing...")end-- Output: We have either spaghetti dinner OR garlic bread
không
The unary operator not returns the oppositeBoolean value of the argument. If the argument is false or nil , then it returns the 1> true1> . Otherwise, it returns the 4> false4> .
print(not true) -- đúngprint(not false) -- đúngprint(not nil) -- đúngprint(not "text") -- đúngprint(not 0) -- false
Bạn có thể sử dụng not operator để kích hoạt một điều kiện hoặc chuỗi nếu biến là false hoặc nil .
local nilVariable -- Biến được tuyên bố nhưng không có giá trị, vì vậy nó là nillocal falseVariable = false -- Biến được tuyên bố với giá trị falseif not nilVariable thenprint(nilVariable) -- Thông báo "nil" vì nil không đúngendif not falseVariable thenprint(falseVariable) -- Thông báo "false" vì false không phải là sự thậtend
Bạn cũng có thể sử dụng not operator để kiểm tra cho ngược lại của một tuyên bố điều kiện nhiều. Trong ví dụ code sau đây, các if — then kiểm tra điều kiện hơn ba là nó không đúng rằng ba là lớn hơn bốn hoặc nó khô
local three = 3local four = 4local five = 5if not (three > four or five < four) thenprint("Three is less than 4 and five is greater than 4.")end-- Output: Three is less than 4 and five is greater than 4.
Quan hệ
Các biểu tượng liên quan so sánh hai tham số và trả lại một button : true hoặc false .
Người vận hành | Mô tả | Ví dụ | Các biểu tượng metameth |
---|---|---|---|
== | Bằng | 3 == 5 → sai | __eq: |
. | Không bằng | 3: 5 → true | |
>: | Lớn hơn | 3 > 5 → sai | |
< | Dưới | 3 → true | __lt |
≥ | Lớn hơn hoặc bằng | 3 >= 5 → sai | |
Nhỏ hơn hoặc bằng | 3 → true | __le) |
Toán học
Lua hỗ trợ các biểu tượng thông thường bên cạnh sự tăng trưởng, modul và sự từ chối thông thường.
Người vận hành | Mô tả | Ví dụ | Các biểu tượng metameth |
---|---|---|---|
+ | Thêm | 1 + 1 = 2 | __add |
-: | Tách | 1 - 1 = 0 | __sub |
* | Tăng tốc | 5 * 5 = 25. | __mul |
/: | Sư đoàn | 10 / 5 = 2 | __div |
//: | Sàn nhà | 10 // 4 = 2-10 // 4 = -3 | __idiv |
^: | Biểu tượng | 2 ^ 4 = 16 | __pow |
% | Hệ | 13 % 7 = 6 | __mod |
-: | Từ chối unary | -2 = 0 - 2 | __unm |
Phân bổ thuốc
Bạn có thể sử dụng các hệ số phân bố để đặt một biến bằng kết quả của một hoạt động nơi mà tham số đầu tiên là giá trị hiện tại của biến.
Hoạt động trong một phần tử được gọi là một lần. Ví dụ, nếu một biểu tượng tạo ra một chỉ số ngẫu nhiên trong một bảng, Luau sử dụng cùng một chỉ số cho cả hành động và hợp nhất.
Trong các ví dụ sau đây, hãy đoán local x = 3 .
Người vận hành | Hành động | Ví dụ | Giá trị mới của x |
---|---|---|---|
. | Thêm | x += 2 | 5 |
-=: | Tách | x -= 2 | 1 |
*) | Tăng tốc | x* 2 | 6 |
/=: | Sư đoàn | x /= 2 | 1.5 |
//=: | Sàn nhà | x //= 2 | 1 |
%=: | Hệ | x %= 2 | 1 |
^=: | Biểu tượng | x ^= 2 | 9 |
..= | Hợp nhất | x ..= " Thế giới!" | "3 Thế giới!" |
Phụ kiện
Các oper作hạn chế khác bao gồm concatenation và length .
Người vận hành | Mô tả | Ví dụ | Các biểu tượng metameth |
---|---|---|---|
.. | Kết hợp hai chuỗi | in("Hello " .. "World!" | __concat: |
# | Độ dài của bảng | Nếu tableVar = 1, 2, 3 , thì # tableVar == 3 . | __len: |