티스토리 뷰

연산자는 다른 프로그래밍 언어들에서도 배우는지라 크게 설명하면서 다룰 것은 없을 것 같고, 처음보거나, 헷갈리거나 잘 쓰지 않았던 기본 연산자들을 나열식으로 짚어볼까한다.

1. Unary Minus Operator

let five = 5
let minusFive = -five

2. Identity Operators

JS랑 PHP에 이런게 있다고 프로그래밍언어론 할 때 잠깐 보긴 했었는데 써보진 못했던 identity operator인 === 와 !==. 상수/변수들이 정확히 같은 instance를 가르키고 있는지 알아볼 때 쓰는 연산자다.

3. Comparison Operator

비교 연산자에 대해 할 말이 있는 것은 아니고 string, tuple의 비교를 연산자로 할 수 있다는 것을 적고 싶었다.

// Comparison #1. String

let myName = "Sueaty"
if myName == Sueaty{
   print("Owner of this blog")
} else{
   print("Not the owner of this blog")
}

// Comparison #2. Tuple
var comparison: Bool
comparison = (10, "chocolate") < (5, "strawberry") //false : 10 > 5
comparison = (5, "mom") > (5, "dad") //true : m > d

4. Nil-coalescing Operator

처음 보는 것은 맞으나 앞전에 operation unwrapping할 때 언급했으므로 pass! 참고 : [Swift 5.0] Swift의 Tuple, Optional

5. Range Operator

이거 조금 신기하다. 적어도 처음에 볼 땐 진짜 신기하고 편하다고 생각했었다. 종류는 closed range operator, half-open range operator, one-sided range정도로 구분해볼 수 있겠다.

// Closed Range
let sueatyFriends = ["Amy", "Beth", "Cattie", "Diana", "Fiona"]
for index in 0...4 { // 0, 1, 2, 3, 4를 모두 포함
   print("\(sueatyFriends[index]) is Sueaty's friend.")
}

// Half-open Range
let count = sueatyFriends.count // count = 5
for index in 0..<count { // count는 포함 안됨
   print("\(sueatyFriends[index]) is Sueaty's friend.")
}

// One-sided Range #1
for friend in sueatyFriends[...4] {
    print("\(friend) is Sueaty's friend.")
}

// One-sided Range #2
let clubRange = 20...
let myAge = 23
if clubRange.contains(myAge){
   print("Entrance Allowed")
} else {
   print("Disqualified")
}

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
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 29 30 31
글 보관함