[Lua] 기본 자료형 정리

2021. 12. 2. 12:09Programming Language/Lua

반응형

■ 기본 자료형

1. number

다른 글로벌 언어들은 정수에 경우 int, 소수에 경우 float 으로 구분하여 자료형을 갖지만

Lua에 경우 number로 모든 숫자를 포함한다.

local num = 10
print(type(num))

num = 3.14
print(type(num))
결과 : 
number
number

2. string

따옴표('') 또는 쌍따옴표("") 로 묶여 있는 문자열을 포함하며, 이중 대괄호 ([[ ]]) 로 묶으면 개행 또는 텝이 들어가 있는 문자열도 포함할 수 있다.

local str = "Hi.\njust do it."
print(str)

str = 'Hi.\njust do it.'
print(str)

str = [[
Hi.
just do it.]]
print(str)
결과 :
Hi.
just do it.
Hi.
just do it.
Hi.
just do it.

3. boolean

true 또는 false 의 값을 포함한다.

local bool = true
print("Type: "..type(bool)..", Value: ", bool)

bool = false
print("Type: "..type(bool)..", Value: ", bool)

bool = 3 > 1
print("Type: "..type(bool)..", Value: ", bool)
결과 : 
Type: boolean, Value: true
Type: boolean, Value: false
Type: boolean, Value: true

4. table

table은 중괄호({})로 묶어서 나타내며, 배열(Array), 맵(Map), 클래스(Class)에 역할을 수행할 수 있다.

 

* 배열일 경우 인덱스는 1 부터 해당 위치에 데이터를 핸들링 할 수 있으며, 맵과 같이 사용될 경우 맵은 인덱스 계산에서 제외된다.

local table = {"1", "2", "3", name ="hyunmin", 5}

-- 배열 : 데이터 취득시 맵 형식은 인덱스 계산에서 제외된다.
print(table[1]..table[2]..table[3]..table[4])
결과 : 
1235

 

* 맵일 경우 Key와 Value 형식을 갖으며, table은 다양한 타입을 함께 사용할 수 있다.

local table = {"1", "2", "3", name ="hyunmin", 5}

-- 맵 : .key  또는 ["key"] 를 통해 value값을 핸들링 할 수 있다.
print(table.name.."\t"..table["name"])
결과 : 
hyunmin hyunmin

 

* 클래스일 경우 해당 클래스에 함수를 생성하고 사용할 수 있다.

local table = {}

function table.add(a,b)
    print(a + b)
end

table.add(30,20)
결과 : 
50
반응형

'Programming Language > Lua' 카테고리의 다른 글

[Lua] 조건문 정리  (1) 2021.12.02
[Lua] 반복문(Loop) 정리  (0) 2021.12.02