티스토리 뷰
*Swift Optional
보통 옵션이라 하면 해도되고 안해도 되는 그런 의미인데
마찬가지로 스위프트에서 옵셔널 기능은, 변수에 nil 이 들어가도 된다는것을 의미한다.
사용은 변수명의 자료형 뒤에 물음표(?) 를 붙이면 된다.
플레이그라운드에서 물음표를 붙이고 떼고 해보면 에러가 나고 안나고를 확인 할 수 있다.
예제를 따라 다양하게 작성해본 코드입니다.
변수에 nil 체크 ( 5~9라인 )
if let 을 활용한 optional binding 활용방법 ( 14~26 라인 )
( 바인딩이 될 경우, 즉 nil이 아닌 경우에 사용 )
[보충 : 이와같은 형태로도 쓸수 있다 ]
if let actualNumber = Int(possibleNumber) {
print("\"\(possibleNumber)\" has an integer value of \(actualNumber)")
} else {
print("\"\(possibleNumber)\" could not be converted to an integer")
}
if let firstNumber = Int("4"), secondNumber = Int("42") where firstNumber < secondNumber {
print("\(firstNumber) < \(secondNumber)")
}
그리고 AND (&&) 연산자와 같은 기능을 제공하는 ( ?? ) 연산자..
(차이점은 AND 연산은 TRUE, FALSE 를 반환하는 반면 ?? 연산자는 값을 반환한다는것 )
앞의 변수가 nil 이 아니면 앞의 변수를, 그렇지 않으면 뒤의 변수를 사용하는 형태이다.
만약 둘다 nil 이라면 ?
let nickName1: String? = nil
let fullName1: String? = nil
let informalGreeting1 = "Hi \(nickName1 ?? fullName1)"
"Hi nil" 이 출력된다.
다음에서 발췌: Apple Inc. ‘The Swift Programming Language (Swift 2.2).’
iBooks. https://itun.es/kr/jEUH0.l
'Develope > Swift' 카테고리의 다른 글
Swift 기초 - 비교 연산자 ( isEqualToString ? ) (0) | 2016.06.12 |
---|---|
Swift 기초 - 조건문 ( 놓치면 안될것들 ) (0) | 2016.06.11 |
Swift 기초 - 반복문 ( for, for-in, while, repeat-while ) (0) | 2016.06.11 |
Swift 쉬어가기 - PlayGround 를 써보자! (0) | 2016.06.11 |
Swift 기초 - 배열과 딕셔너리 ( Array And Dictionary ) (0) | 2016.06.05 |
- Total
- Today
- Yesterday
- object-C
- ubuntu
- diy
- 우분투
- 사물인터넷
- swift
- 엘라스틱서치
- xcode
- 스위프트
- php
- 서버
- 인공지능
- 아두이노
- OpenCV
- mysql
- 머신러닝
- 라즈베리파이
- Deeplearning
- 파이썬
- IOT
- 아이폰
- 강좌
- ios
- 공기청정기
- 캠핑
- 리눅스
- Python
- 미세먼지
- 딥러닝
- Android
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |