bbiguduk님이 번역해 주신 Swift 공식문서를 보며, 기초부터 탄탄히 기본 문법을 정리합니다.
제가 이미 알거나 정리가 불필요하다 판단되는 내용은 생략합니다.

기본적인 연산자 사용법은 다른 언어들과 크게 다르지 않아서 정리하지 않겠습니다..!

Nil-결합 연산자 (Nil-Coalescing Operator)

a != nil ? a! : b

nil-결합 연산자는 위 코드를 짧게 표현한 것이다.

a ?? b

nil-결합 연산자는 옵셔널 a에 값이 있으면 a를 풀거나 anil이면 기본 값 b를 반환한다. a는 항상 옵셔널 타입이고, 표현식 ba에 저장된 타입과 같야아한다.

let defaultColorName = "red"
var userDefinedColorName: String?

var colorNameToUse = userDefinedColorName ?? defaultColorName // "red"

userDefinedColorNamenilOptional(String)으로 정의되었기 때문에, 값을 선택하기 위해 nil-결합 연산자를 사용할 수 있다. 그래서 colorNameToUsedefaultColorName의 값인 “red”값을 가지게 된다.

범위 연산자 (Range Operators)

닫힌 범위 연산자 (Closed Range Operator)

Swift에서 닫힌 범위 연산자는 a…b로 표현하는데, 이는 a 이상 b 이하를 나타낸다. 그리고 ab보다 클 수 없다. 범위 연산자는 for-in 반복문에서 모든 값을 사용할 범위를 반복할 때 사용한다.

for index in 1...5 {
    print("\(index) times 5 is \(index * 5)")
}
// 1 times 5 is 5
// 2 times 5 is 10
// 3 times 5 is 15
// 4 times 5 is 20
// 5 times 5 is 25

반-열림 범위 연산자 (Half-Open Range Operator)

반-열림 범위 연산자는 a..<b로 표현하느데, 이는 a이상 b 미만을 나타낸다.

for index in 1..<5 {
    print("\(index) times 5 is \(index * 5)")
}
// 1 times 5 is 5
// 2 times 5 is 10
// 3 times 5 is 15
// 4 times 5 is 20

단-방향 범위 (One-Sided Ranges)

단-방향 범위는 배열의 한 부분에서 배열의 끝까지 모든 요소를 포함하는 범위를 뜻한다. 연산자의 한쪽을 생략해서 사용한다.

let names = ["Anna", "Alex", "Brian", "Jack"]
for name in names[2...] {
    print(name)
}
// Brian
// Jack

for name in names[...2] {
    print(name)
}
// Anna
// Alex
// Brian
profile
개발로 나를 계발하다.

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN