Skip to content

Booleano

O tipo booleano possui dois valores: false e true, que representam falso e verdadeiro. Em Lua, qualquer valor pode ser avaliado em uma condição. Os únicos valores considerados false são: nil e false.

Os operadores lógicos testam e combinam condições lógicas. Eles permitem que você avalie a veracidade de expressões e tome decisões com base nesses resultados. Os operadores lógicos são comumente usados em estruturas de controle condicional, como condicionais if-else e loops, para determinar o fluxo de execução do programa.

O operador and, retorna o primeiro operando caso este seja false; caso contrário, retorna o segundo.

print(false and 5)
print(true and 5)
print(false and nil)

O operador lógico or retorna o primeiro valor verdadeiro encontrado ou o último valor falso, caso todos sejam falsos.

print(false or 5)
print(true or 5)
print(false or nil)

Os operadores relacionais são usados para comparar valores e avaliar condições. Eles retornam um valor booleano que indica se as condições são verdadeiras ou falsas.

O operador == retorna true se os valores fornecidos forem iguais. Caso contrário, retorna false.

local a = 5
local b = 5
print(a == b)

O operador ~= retorna true se os valores fornecidos forem diferentes. Caso contrário, retorna false.

local a = 5
local b = 6
print(a ~= b)

O operador > retorna true se o primeiro valor for maior que o segundo. Caso contrário, retorna false.

local a = 5
local b = 6
print(a > b)

O operador >= retorna true se o primeiro valor for maior ou igual ao segundo. Caso contrário, retorna false.

local a = 5
local b = 6
print(a >= b)

O operador < retorna true se o primeiro valor for menor que o segundo. Caso contrário, retorna false.

local a = 5
local b = 6
print(a < b)

O operador <= retorna true se o primeiro valor for menor ou igual ao segundo. Caso contrário, retorna false.

local a = 5
local b = 6
print(a <= b)

A palavra-chave not é usada para negar o resultado de um operador lógico. Ela retorna true se o operando for false, e false se o operando for true.

local a = 5
local b = 6
print(not (a == b))