Case let
Updated:
🔷 .some, .none
Case let 을 통해 값이 비어 있는지 여부를 알 수 있습니다 데이터가 있다면 .some 데이터가 없다면 nil 이면 .none 입니다
let friends: [String?] = ["Jacob", nil, nil, "Emma"]
// 데이터가 있다면 .some
for case let .some(aFriend) in friends {
print(aFriend)
// Jacob
// Emma
}
// 데이터가 없다면 즉 nil 이라면 .none
for case let .none in friends {
print("친구가 없다")
// 친구가 없다
// 친구가 없다
}
for (index, aFriend) in friends.enumerated() {
switch aFriend {
case let (.some(aFriend)): // 데이터가 있다면
print("index: \(index), aFriend: \(aFriend)")
case let(.none): // 데이터가 없다면
print("index: \(index), 친구가 없다")
}
}
/*
index: 0, aFriend: Jacob
index: 1, 친구가 없다
index: 2, 친구가 없다
index: 3, aFriend: Emma
*/
🔷 Case let 변수?
case let 변수? 와 같이 optional 표시로 값이 있을때만 가져 올수 있습니다
위의 case let .some(변수) 와 동일한 기능을 합니다
let friends: [String?] = ["Jacob", nil, nil, "Emma"]
for case let aFriend? in friends {
print(aFriend)
}
/*
Jacob
Emma
*/
Reference
Swift Tip of the day - 스위프트 기초 문법 - https://spangle-wedelia-2dc.notion.site/Swift-Tip-of-the-day-c428bfd990674bcfa2a4973e5d08c4eb
꼼꼼한 재은 씨의 스위프트 문법편 - https://book.jacobko.info/#/book/1186710233
Leave a comment