Material de Apoio II Valores & Tipos Valores e tipos: Lua é uma linguagem dinamicamente tipada, ou seja, variáveis não possuem tipos. Não existe definição de tipos na linguagem. Todos os valores carregam seu próprio tipo. Observe abaixo a diferença entre um trecho de código em C e outro em Lua: int
info
Grupo: Visconde
Registrado: 03/02/09
Posts: 361
Reputação: +200
Char no Tibia: Fearless Man
Material de Apoio II
Valores & Tipos
Valores e tipos:
Lua é uma linguagem dinamicamente tipada, ou seja, variáveis não possuem tipos. Não existe definição de tipos na linguagem. Todos os valores carregam seu próprio tipo. Observe abaixo a diferença entre um trecho de código em C e outro em Lua:
Todos os valores em Lua são valores de primeira classe. Isto significa que todos os valores podem ser
armazenados em variáveis, passados como argumentos para outras funções e retornados como resultados.
Existem oito tipos básicos em Lua:
Cada tipo básico possui uma característica que o diferencia dos outros e também no modo de tratamento
do valor. Abaixo você encontra uma detalhação dos tipos mais usados:
nil: Nil é o tipo do valor nil, cuja propriedade principal é ser diferente de qualquer outro valor. Podemos entendê-lo também como uma ausência de valor útil. Não tem tratamento para este tipo.
boolean: Boolean é o tipo dos valores true e false. Este nome se deve ao matemático George Boole, que elaborou a álgebra booleana, uma espécie de matemática que envolve somente os valores true e false e que só tem como resultado true ou false.
number: Representa o tipo numérico e é tratado utilizando-se os operadores matemáticos e a biblioteca math.
string: O tipo string representa cadeias de caracteres, ou seja, palavras, textos, letras e até mesmo números. É tratada utilizando-se a biblioteca string.
table: O tipo table implementa matrizes associativas, isto é, matrizes que podem conter não apenas números, mas qualquer valor, excetuando-se nil. São o único mecanismo de estruturação de dados em Lua.
Coerção:
Diferentemente de outras linguagens, em Lua, há uma conversão automática entre valores do tipo string e do tipo number. Isto significa que qualquer operação matemática aplicada a uma string, tenta transformar o valor da string em número. O mesmo ocorre ao inverso, quando se usa um número para tentar representar uma cadeia de caracteres, este valor é automaticamente convertido em um valor do tipo string.
Dito isto, podemos elaborar um resumo:
1º: Em Lua, variáveis não possuem tipos - somente valores possuem tipos;
2º: Existem oito tipos básicos em Lua;
3º: Lua é uma linguagem de tipagem dinâmica;
4º: Lua faz conversão entre os tipos string e number.
Referências:
Manual De Referência de Lua 5.1
Por hoje é só.
flw
Editado Dezembro 8 por apocarai