๐ Day 09 : Generic ( ์ ๋ค๋ฆญ )
๐ก Generic : ์ด๋ ํ ์๋ฃํ์ด๋ ๋ฐ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋, ๋ฒ์ฉ ์ฝ๋๋ฅผ ์์ฑํ ๋ ์ฌ์ฉ
๐ ์ ๋ค๋ฆญ ํจ์
์ ๋ค๋ฆญ์ <>์ ํตํด ๋ํ๋ด๊ณ , ์ด ์์ ํ์ ์ฒ๋ผ ์ฌ์ฉํ ์ด๋ฆ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
๋ณดํต์ T๋ฅผ ๋ง์ด ๋ฃ๋๋ค.
๐ฌ ๋ค์ํ Type ์์ ์ถ๋ ฅ
var mySomeArray = MyArray([1,2,3])
print("mySomeArray : \(mySomeArray)")
var myStringArray = MyArray(["๊ฐ", "๋"])
print("myStringArray : \(myStringArray)")
>>> mySomeArray : MyArray<Int>(elements: [1, 2, 3])
>>> myStringArray : MyArray<String>(elements: ["๊ฐ", "๋"])
๐ฌ ๊ตฌ์กฐ์ฒด๋ฅผ ์ ์ธํ๊ณ ์์ ์ถ๋ ฅ
struct Friend {
var name : String
}
let friend_01 = Friend(name: "๊ฐ๋ฐ")
let friend_02 = Friend(name: "์ค์ํํธ")
var myFriendsArray = MyArray([friend_01, friend_02, "๋", "๋ค"])
print("myFriendsArray : \(myFriendsArray)")
>>> myFriendsArray : MyArray<Any>(elements: [__lldb_expr_60.Friend(name: "๊ฐ๋ฐ"), __lldb_expr_60.Friend(name: "์ค์ํํธ"), "๋", "๋ค"])
'๐ iOS > ๊ธฐ์ด๋ฌธ๋ฒ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Swift]11 : ๋งค๊ฐ๋ณ์๋ก์ ํด๋ก์ (0) | 2022.12.06 |
---|---|
[Swift]10 : Closure (0) | 2022.12.06 |
[Swift]08 : ํจ์ ๋งค๊ฐ๋ณ์ ์ด๋ฆ ์ค์ (0) | 2022.12.04 |
[Swift]07 : Property Observer (0) | 2022.12.03 |
[Swift]06 : Class vs Struct (0) | 2022.12.03 |