En aquest tema, aprendrem sobre les variables i els tipus de dades en Lua. Les variables són fonamentals en qualsevol llenguatge de programació, ja que ens permeten emmagatzemar i manipular dades. Lua és un llenguatge dinàmicament tipat, el que significa que no cal declarar el tipus de dada d'una variable explícitament.
Continguts
Declaració de Variables
En Lua, les variables es poden declarar simplement assignant-los un valor. No cal especificar el tipus de dada.
Variables Locals i Globals
- Variables locals: Són accessibles només dins del bloc de codi on es declaren. Es declaren amb la paraula clau
local
. - Variables globals: Són accessibles des de qualsevol part del programa. Es declaren sense la paraula clau
local
.
Tipus de Dades
Lua té diversos tipus de dades bàsics:
- nil: Representa una absència de valor.
- number: Representa números (enters i de punt flotant).
- string: Representa cadenes de text.
- boolean: Representa valors lògics (true o false).
- table: Representa estructures de dades complexes.
- function: Representa funcions.
- userdata: Representa dades definides per l'usuari.
- thread: Representa fils d'execució independents.
Exemples de Tipus de Dades
-- nil local a = nil -- number local b = 42 local c = 3.14 -- string local d = "Hola, món!" -- boolean local e = true local f = false -- table local g = {1, 2, 3, "quatre"} -- function local h = function() print("Això és una funció") end
Conversió de Tipus
Lua permet convertir entre diferents tipus de dades utilitzant funcions de conversió.
Funcions de Conversió
- tonumber(): Converteix una cadena o un altre tipus de dada a un número.
- tostring(): Converteix un número o un altre tipus de dada a una cadena.
local num = "123" local converted_num = tonumber(num) -- Converteix la cadena a número local str = 456 local converted_str = tostring(str) -- Converteix el número a cadena
Exemples Pràctics
Exemple 1: Variables i Tipus de Dades
-- Declaració de variables local name = "Lua" local version = 5.4 local is_dynamic = true -- Imprimir valors print("Llenguatge: " .. name) print("Versió: " .. version) print("És dinàmic: " .. tostring(is_dynamic))
Exemple 2: Conversió de Tipus
-- Conversió de cadena a número local str_num = "100" local num = tonumber(str_num) print(num + 50) -- Sortida: 150 -- Conversió de número a cadena local number = 200 local str = tostring(number) print("El número és: " .. str) -- Sortida: El número és: 200
Exercicis
Exercici 1: Declaració de Variables
Declara tres variables: una cadena, un número i un valor booleà. Imprimeix els seus valors.
Exercici 2: Conversió de Tipus
Converteix una cadena que conté un número a un tipus de dada numèric i suma-li 10. Després, converteix el resultat a una cadena i imprimeix-lo.
Exercici 3: Taula de Tipus de Dades
Crea una taula que contingui diferents tipus de dades (cadena, número, booleà). Imprimeix cada element de la taula.
Solucions
Solució 1: Declaració de Variables
local cadena = "Aprenent Lua" local numero = 2023 local boolea = false print(cadena) print(numero) print(boolea)
Solució 2: Conversió de Tipus
local str_num = "30" local num = tonumber(str_num) local resultat = num + 10 local str_resultat = tostring(resultat) print("El resultat és: " .. str_resultat) -- Sortida: El resultat és: 40
Solució 3: Taula de Tipus de Dades
Conclusió
En aquesta secció, hem après com declarar variables i els diferents tipus de dades disponibles en Lua. També hem vist com convertir entre diferents tipus de dades i hem practicat amb alguns exemples i exercicis. Ara estem preparats per avançar cap als operadors en Lua.
Curs de Programació en Lua
Mòdul 1: Introducció a Lua
Mòdul 2: Conceptes Bàsics
Mòdul 3: Conceptes Intermedis
Mòdul 4: Conceptes Avançats
- Coroutines
- Programació Orientada a Objectes en Lua
- Tècniques de Depuració
- Optimització del Rendiment
- Ús de l'API C de Lua
Mòdul 5: Aplicacions Pràctiques
- Construcció d'un Joc Simple
- Scripting en Motors de Joc
- Automatització de Tasques amb Lua
- Integració de Lua amb Altres Llenguatges