E D R , A S I H C RSS

LUA_5

1. …Œด๋ธ” ธฐดˆ

˜ค๋Š˜€ ๋ฃจ•„๋งŒฐ–  žˆ๋Š” ๋…Šน•œ ž๋ฃŒตฌกฐ …Œด๋ธ”— ๋Œ€•„œ •Œ•„๋ณด Šต๋‹ˆ๋‹ค. ๋ฃจ•„—„œ …Œด๋ธ”€ •‰ฌ …Œด๋ธ”ณผ ฐ™€ ž๋ฃŒ ตฌกฐ ƒ˜ —ญ• „ •ฉ๋‹ˆ๋‹ค. …Œด๋ธ”€ ฒดง€–ฅ  ”„๋กœธ๋ž˜๋ฐ„ ฐ€๋Šฅ•˜ฒŒ •ฃผ๋Š” —ญ• ๋„ ฒน•ฉ๋‹ˆ๋‹ค. ๋ฌดŠจ •ธฐง€๋Š” œœžˆ „ค๋ช… ๋“œ๋ฆฌ Šต๋‹ˆ๋‹ค. šฐ„  „‹•˜ฒŒ ž๋ฃŒตฌกฐ๋กœจ˜ …Œด๋ธ”„ ‚ดŽด ๋ณด Šต๋‹ˆ๋‹ค.

•‰ฌ …Œด๋ธ”๋กœ ‚ฌšฉ•˜ธฐ

HashT = {a = 1, b = 2, c = 3, d = 4 }
print( Hashta )
1
print( Hashtb )
2

—ฌธฐ„œ a ๋Š” ‚ค ฐ’œผ๋กœ ‚ฌšฉ ๋˜—ˆ  1๋Š” a— ๋งด•‘ ๋œ ฐ’œผ๋กœ ‚ฌšฉ ๋˜—ˆŠต๋‹ˆ๋‹ค. ‚ค ฐ’€ ๋‹ˆœžˆ ฐ’œผ๋กœ ๋ง  ๋ณ€ˆ˜๋กœ๋„ ‚ฌšฉ •  ˆ˜ žˆŠต๋‹ˆ๋‹ค.

HashT2 = { a = 1, b = 2, c= 3}
print ( HashT2.a )
1

๋Œ€‹  ฐ’œผ๋กœ ‚คฐ’„ ‚ฌšฉ• •Œ™€๋Š” ๋‹ค๋ฅดฒŒ ๋ณ€ˆ˜—„œ๋Š” …Œด๋ธ”๋ช…— . ๋กœ๋„ ๋ณ€ˆ˜๋ฅผ ฐธกฐ•  ˆ˜ žˆŠต๋‹ˆ๋‹ค. HashT2a ๋กœ๋„ ฐธกฐ ฐ€๋Šฅ•ฉ๋‹ˆ๋‹ค.

๋งŒ•…Œด๋ธ”„ ๋งŒ๋“ค ๋•Œ ‚คฐ’—†๋‹ค๋ฉด –ด๋–ปฒŒ ๋ นŒš”? ธ๋Ÿผ  •ˆ˜˜•œผ๋กœ ˆœฐจ œผ๋กœ ๋ฒˆ˜ฐ€ ๋งคฒจ‘‹ˆ๋‹ค. ˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹Œณผ ฐ™Šต๋‹ˆ๋‹ค.

Fruit = { "apple","orange","banana" }
print ( Fruit1 )
apple

ธ๋ ‡ธฐ ๋•Œ๋ฌธ— …Œด๋ธ”€ ๋ฐฐ—ด๋กœ๋„ ‚ฌšฉ ๋  ˆ˜ žˆŠต๋‹ˆ๋‹ค. ธ๋Ÿผ ๋ฐฐ—ด— ถ”ฐ€ œผ๋กœ insert •˜  remove •ด ๋ณด Šต๋‹ˆ๋‹ค.

Fruit #Fruit + 1 = "grape" -- Fruit ˜ •„…œ ฐฏˆ˜๋ฅผ –ป–ด + 1„ •„œ ๋งˆง€๋ง‰ ฒจž๋ฅผ ตฌ•ฐ’„ ๋Œ€ž…•œ‹ค.
print( Fruit4 )
grape

ด๋ ‡ฒŒ €ฐฎฒŒ ถ”ฐ€๋ฅผ •  ˆ˜๋„ žˆง€๋งŒ, „‹žˆ table.insert(Fruit,"kiwi") ˜๋Ÿผ „‹žˆ •  ˆ˜๋„ žˆŠต๋‹ˆ๋‹ค. ‚ญ œ๋Š” table.remove(Fruit,4) ๋กœ 4๋ฒˆงธ •„…œ„ ‚ญ œ •  ˆ˜ žˆŠต๋‹ˆ๋‹ค.

table.insert(Fruit,"mango")
print(Fruit6)
mango
table.remove(Fruit,6)
print(Fruit6)
nil

ธ๋ฆฌ  ๋งŒ•ฝ ๋ฐฐ—ด๋กœ ‚ฌšฉ•˜๋Š” …Œด๋ธ” ๋‚ด˜ ฐ’๋“ค„  • •˜  ‹œผ๋ฉด table.sort๋ฅผ ‚ฌšฉ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.
table.sort(Fruit)
for i = 1,#Fruit do print(Fruiti) end
apple
banana
kiwi
orange

2. …Œด๋ธ”ณผ •ˆ˜

ง€ธˆนŒง€๋Š” „‹žˆ …Œด๋ธ”„ ž๋ฃŒตฌกฐ๋กœ ‚ฌšฉ•˜˜€๋Š”๋ฐ, ๋ฃจ•„—„œ๋Š” ฑฐ˜ ๋ชจ๋“  ฒƒ…Œด๋ธ”˜ ‚ค๋กœ ‚ฌšฉ ๋  ˆ˜ žˆธฐ ๋•Œ๋ฌธ— …Œด๋ธ”ณผ •ˆ˜๋ฅผ —ฐฒฐ •  ˆ˜ žˆŠต๋‹ˆ๋‹ค.

function Car(name)
local car_name = name
local function Go()
print( car_name .. " is running" )
end
return { Go = Go } -- —ฌธฐ„œ local function Go๋ฅผ ๋ฐ˜™˜•˜๋ฏ€๋กœ Car— ๋Œ€•œ ๋งด๋ฒ„ •ˆ˜๋กœ ‚ฌšฉ•  ˆ˜ žˆ๋‹ค.
end
myCar = Car("SM3") -- Car ๋ผ๋Š” •ˆ˜๋ฅผ †ต•…Œด๋ธ”„ ๋งŒ๋“ค  …Œด๋ธ” ๋‚ด˜ •ˆ˜๋ฅผ †ต•ฒด ง€–ฅ ฝ”๋“œ ž‘„
myCar.Go()
SM3 is running
myCar:Go()
SM3 is running

œ„˜ ˜ˆ œ๋งŒœผ๋กœ ฒด ง€–ฅด๋  ๋ถ€๋ฅดธฐ ข€ ๋ถ€กฑ•œ ๋ฉดžˆ๋Š” ฒƒ ฐ™๋„š”. ธ๋Ÿผ ข€ ๋” ฒดง€–ฅ œผ๋กœ ๋ฐ”ฟ” ๋ณผนŒš”?

Car = {}
function Car:new (obj)
obj = obj or {}
setmetatable(obj, self)
self.__index = self
return obj
end
mine = Car:new()

ด๋ ‡ฒŒ ๋งŒ๋“ค๋ฉด ข€ ๋” ฒด ง€–ฅ œผ๋กœ ๋งŒ๋“ค ˆ˜ žˆŠต๋‹ˆ๋‹ค. —ฌธฐ„œ setmetatableด๋ผ๋Š” •ˆ˜ฐ€ ๋‚˜˜ต๋‹ˆ๋‹ค. metatable— ๋Œ€•„œ๋Š” ๋‹Œ •˜—„œ „ค๋ช…•˜๋„๋ก •˜ Šต๋‹ˆ๋‹ค.

3. ๋งˆ๋ฌด๋ฆฌ
„‹•˜ฒŒ …Œด๋ธ”— ๋Œ€•„œ ๋ฐฐ› Šต๋‹ˆ๋‹ค. …Œด๋ธ”€ ๋ฃจ•„—„œ ฐ€žฅ ‘š”•œ ƒ€žŽ  ๋” ๋‹–‘•˜ฒŒ ™œšฉ•  ˆ˜ žˆŠต๋‹ˆ๋‹ค. ๋‚˜‘— ข€ ๋” นŠ…Œด๋ธ”— ๋Œ€•„œ จ ๋ณด Šต๋‹ˆ๋‹ค.
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:37
Processing time 0.0166 sec