-
[Swift] Unwrap 옵셔널 변수iOS/Swift 2022. 12. 1. 01:03
옵셔널(Optional)이란?
= 값을 알지 못하는 상태
= 값이 있는지 없는지 모르는 상태
/* Type이 Int형 이긴 한데, 값이 있는지는 모르겠을때 물음표를 붙임 */ var someVariable : Int? = nil
물음표가 없다는 뜻은 값이 있다는것이기 때문에, 값이 nil 이면 Type 옆에 물음표를 붙여야 함
/* 만약 변수 값이 nil 이면 90을 대입해라 */ if someVariable == nil { someVariable = 90 }
언랩핑이란?
= 감싸져 있는 것을 벗기는 것
= 옵셔널 변수를 값이 있는 변수로 바꾸는 것
언래핑을 하지 않으면 Optional(90) 으로 출력되고 언래핑 후에는 90 으로 출력됨
/* 만약 someVariable이 값이 있다면, otherVariable로 사용하겠다.*/ if let otherVariable = someVariable { print("언래핑 되었음. 즉 값이 있음. otherVariable : \(otherVariable)") } else { print("값이 없다.") }
/* someVariable 이 비어 있으면 즉 값이 없으면 기본값으로 요놈을 넣겠다*/ let myVariable = someVariable ?? 10 print("myValue:\(myValue)") // 10 으로 출력됨 var firstValue : Int? = 30 var secondValue : Int? = 50 print("firstValue : \(firstValue)") // Optional(30) print("secondValue : \(secondValue)") // Optional(50) unwrap(firstValue) unwrap(secondValue) func unwrap(parameter: Int?){ print("wrap() called") // 값이 없으면 해당 함수를 리턴하겠다 guard let unWrappedParam = parameter else { return //어떠한 처리도 하지 않고 반환하겠다 } print("unWrappedParam : \(unWrappedParam)") }
'iOS > Swift' 카테고리의 다른 글
[Swift] 클래스와 스트럭트 (0) 2022.12.01 [Swift] enum 열거형 (0) 2022.12.01 [Swift] foreach 반복문 (0) 2022.12.01 [Swift] 조건문 (0) 2022.12.01 [Swift] For 반복문 (0) 2022.11.30