Lua - Типы данных

Lua - это язык с динамической типизацией, поэтому переменные не имеют типов, только значения имеют типы. Значения можно сохранять в переменных, передавать как параметры и возвращать как результаты.

В Lua, хотя у нас нет типов данных переменных, но у нас есть типы для значений. Список типов данных для значений приведен ниже.

Старший Нет Тип значения и описание
1

nil

Используется для отличия значения от наличия некоторых данных или отсутствия (нулевых) данных.

2

boolean

Включает в себя значения true и false. Обычно используется для проверки условий.

3

number

Представляет действительные числа (с плавающей запятой двойной точности).

4

string

Представляет массив символов.

5

function

Представляет метод, написанный на C или Lua.

6

userdata

Представляет произвольные данные C.

7

thread

Представляет независимые потоки выполнения и используется для реализации сопрограмм.

8

table

Представляет обычные массивы, таблицы символов, наборы, записи, графики, деревья и т. Д. И реализует ассоциативные массивы. Может содержать любое значение (кроме nil).

Тип Функция

В Lua есть функция под названием 'type', которая позволяет нам узнать тип переменной. Некоторые примеры приведены в следующем коде.

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

Когда вы создаете и выполняете указанную выше программу, она дает следующий результат в Linux:

string
number
boolean
function
nil
string

По умолчанию все переменные будут указывать на ноль, пока им не будет присвоено значение или они не инициализируются. В Lua нулевые и пустые строки считаются истинными в случае проверки условий. Следовательно, вы должны быть осторожны при использовании логических операций. Мы узнаем больше об этих типах в следующих главах.