반응형
// assert, guard
// 값 확인에 사용
// assert
// 디버깅 모드에서만 작동
var a: Int = 0
// 맞으면 지나감 아니면 출력하고 중지
assert(a == 0, "someInt != 0")
a = 1
//assert(a == 0, "someInt != 0")
// guard 는 빠른 종료를 위한 구문
// if else로 구현하는 것과 비슷
// 예시
var count: Int = 1
while true{
guard count < 3 else{
break
}
print(count)
count += 1
}
// 딕셔너리에서 유용
// 참고로 딕셔너리에서 꺼내오는 값은 항상 옵셔널(값이 없을 수도 있으니까)
func exFunc(info: [String: Any]){
// info.name이 String인가? 아니면 리턴
guard let name = info["name"] as? String else{
return
}
guard let age = info["age"] as? Int, age >= 0 else {
return
}
print("\(name): \(age)")
}
exFunc(info: ["name":"personA", "age":20])
exFunc(info: ["name":"personB", "age":"30"]) // 그냥 return
반응형
'iOS > Swift' 카테고리의 다른 글
[Swift] extension 익스텐션 (0) | 2022.01.25 |
---|---|
[Swift] 프로토콜 protocol (0) | 2022.01.25 |
[Swfit] 옵셔널 체이닝 (0) | 2022.01.24 |
[Swift] 클래스의 생성자와 소멸자 (0) | 2022.01.24 |
[Swift] 클래스의 상속 (0) | 2022.01.24 |