🔥 비교 연산자
강의 목차
Swift는 다양한 비교 연산자를 지원합니다. 비교 연산자는 두 값을 비교하고 그 결과를 Bool 타입으로 반환하죠. 자, 이제부터 Swift에서 제공하는 비교 연산자들을 하나씩 살펴보도록 합시다!
Equal to (같음)
==
연산자는 두 값이 같은지를 비교합니다. 두 값이 같으면 true
를, 다르면 false
를 반환하죠.
let a = 5 let b = 5 let c = 6 print(a == b) // true print(a == c) // false
swift
위의 예제에서 a
와 b
는 모두 5로 같은 값이므로 a == b
는 true
를 반환합니다. 반면, a
와 c
는 값이 다르므로 a == c
는 false
를 반환하죠.
Not equal to (같지 않음)
!=
연산자는 두 값이 다른지를 비교합니다. 두 값이 다르면 true
를, 같으면 false
를 반환합니다.
let x = 10 let y = 20 print(x != y) // true print(x != 10) // false
swift
위의 예제에서 x
는 10, y
는 20으로 서로 다른 값이므로 x != y
는 true
를 반환합니다. 반면, x
와 10은 같은 값이므로 x != 10
은 false
를 반환하죠.
Greater than (큼)
>
연산자는 왼쪽 값이 오른쪽 값보다 큰지를 비교합니다. 왼쪽 값이 더 크면 true
를, 작거나 같으면 false
를 반환합니다.
let p = 30 let q = 20 print(p > q) // true print(q > p) // false
swift
위의 예제에서 p
는 30, q
는 20이므로 p > q
는 true
를 반환합니다. 반대로 q > p
는 false
를 반환하죠.
Less than (작음)
<
연산자는 왼쪽 값이 오른쪽 값보다 작은지를 비교합니다. 왼쪽 값이 더 작으면 true
를, 크거나 같으면 false
를 반환합니다.
let m = 7 let n = 12 print(m < n) // true print(n < m) // false
swift
위의 예제에서 m
은 7, n
은 12이므로 m < n
은 true
를 반환합니다. 반대로 n < m
은 false
를 반환하죠.
Greater than or equal to (크거나 같음)
>=
연산자는 왼쪽 값이 오른쪽 값보다 크거나 같은지를 비교합니다. 왼쪽 값이 더 크거나 같으면 true
를, 작으면 false
를 반환합니다.
let r = 15 let s = 15 let t = 10 print(r >= s) // true print(r >= t) // true print(t >= r) // false
swift
위의 예제에서 r
과 s
는 모두 15로 같은 값이므로 r >= s
는 true
를 반환합니다. 또한, r
은 t
보다 크므로 r >= t
역시 true
를 반환하죠. 반면, t
는 r
보다 작으므로 t >= r
은 false
를 반환합니다.
Less than or equal to (작거나 같음)
<=
연산자는 왼쪽 값이 오른쪽 값보다 작거나 같은지를 비교합니다. 왼쪽 값이 더 작거나 같으면 true
를, 크면 false
를 반환합니다.
let u = 8 let v = 8 let w = 16 print(u <= v) // true print(u <= w) // true print(w <= u) // false
swift
위의 예제에서 u
와 v
는 모두 8로 같은 값이므로 u <= v
는 true
를 반환합니다. 또한, u
는 w
보다 작으므로 u <= w
역시 true
를 반환하죠. 반면, w
는 u
보다 크므로 w <= u
는 false
를 반환합니다.
이렇게 Swift에서는 다양한 비교 연산자를 제공하여 값들을 비교할 수 있도록 해줍니다. 이 연산자들은 주로 조건문과 함께 사용되어 프로그램의 흐름을 제어하는 데 활용되죠.
let score = 85 if score >= 90 { print("당신의 학점은 A입니다.") } else if score >= 80 { print("당신의 학점은 B입니다.") } else if score >= 70 { print("당신의 학점은 C입니다.") } else if score >= 60 { print("당신의 학점은 D입니다.") } else { print("당신의 학점은 F입니다.") } // "당신의 학점은 B입니다." 출력
swift
위의 예제는 점수에 따라 학점을 출력하는 코드입니다. 비교 연산자를 사용하여 점수를 90, 80, 70, 60과 비교하면서 알맞은 학점을 출력하죠. 이처럼 비교 연산자는 조건에 따라 다른 동작을 하도록 할 때 매우 유용하게 사용됩니다.
튜플 비교
Swift에서는 튜플도 비교할 수 있습니다. 같은 타입이고 같은 개수의 요소를 가진 두 튜플을 비교 연산자로 비교할 수 있죠. 이때 튜플은 왼쪽부터 오른쪽으로 한 요소씩 비교되면서, 다른 값이 나오면 그 두 값을 비교한 결과가 전체 튜플 비교의 결과가 됩니다.
let tuple1 = (10, "apple") let tuple2 = (10, "banana") let tuple3 = (15, "apple") print(tuple1 < tuple2) // true print(tuple1 < tuple3) // true print(tuple2 < tuple3) // true
swift
위의 예제에서 tuple1
과 tuple2
는 첫 번째 요소가 같고 두 번째 요소를 비교하면 "apple"이 "banana"보다 작으므로 tuple1 < tuple2
는 true
를 반환합니다.
tuple1
과 tuple3
은 첫 번째 요소에서 10이 15보다 작으므로 두 번째 요소는 비교할 필요 없이 바로 tuple1 < tuple3
이 true
가 되죠.
마찬가지로 tuple2
와 tuple3
도 첫 번째 요소에서 10이 15보다 작으므로 tuple2 < tuple3
은 true
를 반환합니다.
단, 튜플 비교시 주의할 점이 있습니다. 비교하려는 연산자가 튜플의 모든 요소에 적용 가능해야만 비교가 가능하다는 거죠. 예를 들어 (String, Int)
타입은 <
연산자로 비교할 수 있지만, (String, Bool)
타입은 Bool 값에 <
연산자를 적용할 수 없으므로 비교가 불가능합니다.
let a = ("apple", 10) let b = ("banana", 20) print(a < b) // true let c = ("cherry", true) let d = ("durian", false) print(c < d) // 컴파일 에러!
swift
이렇게 Swift의 비교 연산자에 대해 자세히 알아보았습니다. 값을 비교하고 조건에 따라 다른 동작을 하도록 하는 데 매우 유용한 기능이니, 앞으로 여러분이 Swift로 코딩할 때 잘 활용해보시기 바랍니다!