제네릭은 배열열에 어떠한 형태든 받을수 있음
struct myArray<T>{
// 제네릭을 담은 빈 배열
// 멤버변수
var elements : [T] = [T]()
// 생성자 메소드
// _ 앞에 언더바를 넣음으로 매개변수 이름 생략
init(_ elements: [T]) {
self.elements = elements
}
}
Struct 생성
struct Friend {
var name: String
}
숫자
var mySomeArray = myArray([1,2,3])
print("mySomeArray : \(mySomeArray)")
// mySomeArray : myArray<Int>(elements: [1, 2, 3])
문자열
var myStringArray = myArray(["가","나","다"])
print("myStringArray : \(myStringArray)")
// myStringArray : myArray<String>(elements: ["가", "나", "다"])
let friend_01 = Friend(name: "철수")
let friend_02 = Friend(name: "영희")
let friend_03 = Friend(name: "수잔")
var myFriendsArray = myArray([friend_01,friend_02,friend_03])
print("myFriendsArray : \(myFriendsArray)")
// myFriendsArray : myArray<Friend>(elements: [__lldb_expr_33.Friend(name: "철수"), __lldb_expr_33.Friend(name: "영희"), __lldb_expr_33.Friend(name: "수잔")])
반응형