joaohd 200 Postado Dezembro 8, 2010 Share Postado Dezembro 8, 2010 (editado) 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 a = 1; float b = 1.25; char c[8] = "apocarai"; a = 1 b = 1.25 c = "apocarai" 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: nil boolean number string function userdata thread table 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, 2010 por apocarai Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados