[Swift 문법] 3. 연산자

JJOOEE__·2024년 6월 26일
0

Swift 문법

목록 보기
9/13
post-thumbnail

🍎 3. 연산자

🍏 1. 산술 연산자

◻️ ' + ' 덧셈 연산자

◻️ ' - ' 뻴셈 연산자

◻️ ' * ' 곱셈 연산자

◻️ ' / ' 나누기 연산자

let quotient = 10 / 5  // quotient는 2

◻️ ' % ' 나머지 연산자

let remainder = 10 % 3  // remainder는 1

🍏 2. 비교 연산자

  • 주로 조건문 (if, while문 등)에서 사용되어 조건을 평가하거나 정렬과 피터링 작업에서 유용하게 활용함

◻️ ' == ' 같음

let a = 5
let b = 5

let isEqual = (a==b)  //true

◻️ ' != ' 다름

let a = 5
let b = 10

let isNotEqual = (a!=b)  //true

◻️ ' <, > ' 큼, 작음

let a = 10
let b = 5
let isGreater = (a > b)  // true

let a = 5
let b = 10
let isLess = (a < b)  // true

◻️ ' <= ' 작거나 같음

let a = 5
let b = 10
let isLessOrEqual = (a <= b)  // true

◻️ ' >= ' 크거나 같음

let a = 10
let b = 10
let isGreaterOrEqual = (a >= b)  // true

🍏 3. 논리 연산자

  • 조건을 결합하거나 바꿀때 사용
  • 주로 조건문 (if, guard 문)에서 사용되어 복잡한 조건을 평가하거나 필터링할때 유용하게 활용

◻️ ' && ' AND

  • 두 개의 조건이 모두 참 일때만 전체 조건이 참이 됨
let condition1 = true
let condition2 = false
let result = condition1 && condition2  // result는 false

let condition3 = true
let condition4 = true
let result = condition3 && condition4  // result는 true

◻️ ' || ' OR

  • 두 개의 조건 중 하나이상이 참일 때 전체 조건이 참이 됨
    • 둘 중 하나만 참이어도 참, 둘 다 참이어도 참
let condition1 = true
let condition2 = false
let result = condition1 || condition2  // result는 true

◻️ ' ! '

  • 조건의 반대를 나타냄
  • 참이면 거짓, 거짓이면 참으로 변환함
let condition = true
let result = !condition  // result는 false

🍏 4. 할당 연산자

  • 변수나 상수에 값을 할당하거나 수정하는 작업을 간편하게 수행하게 함

◻️ ' = '

  • 오른쪽 피연산자의 값을 왼쪽 피연산자(변수나 상수)에 할당
var x = 10
x = 5  // x의 값이 5로 변경됨

◻️ ' += '

  • 변수에 값을 더한 후 그 결과를 다시 변수에 할당
var x = 10
x += 5  // x는 15가 됨
// x = x + 5

◻️ ' -= '

  • 변수에서 값을 뺀 후 그 결과를 다시 변수에 할당
var x = 10
x -= 3  // x는 7이 됨
// x = x - 3

◻️ ' *= '

  • 변수에 값을 곱한 후 그 결과를 다시 변수에 할당
var x = 5
x *= 2  // x는 10이 됨
// x = x * 2

◻️ ' /= '

  • 변수를 값으로 나눈 후 그 결과를 다시 변수에 할당
var x = 20
x /= 4  // x는 5가 됨
// x = x / 4

◻️ ' %= '

  • 변수를 값으로 나눈 나머지를 계산하여 그 결과를 다시 변수에 할당
var x = 10
x %= 3  // x는 1이 됨
// x = x % 3

🍏 5. 범위 연산자

  • 주로 반복문에서 사용
  • 배열이나 컬렉션의 인덱스 접근 등에 유용하게 활용
  • 특정 값의 범위를 표현할 때 자주사용

◻️ ' a...b ' 닫힌 범위 연산자

  • 시작부터 끝 값까지 포함하는 범위를 나타냄
for index in 1...5 {
    print(index)  // 1, 2, 3, 4, 5 출력
}

◻️ ' a..<b' 반 열림 범위 연산자

  • 시작부터 끝 직전 값까지를 포함하는 범위를 나타냄
for index in 1..<5 {
    print(index)  // 1, 2, 3, 4 출력
}

◻️ ' ...a, a..., ..<a ' 단 방향 범위 연산자

  • 닫힌 범위 연산자 / 반 닫힌 범위 연산자를 쓸 때 시작과 끝 범위 중 하나만 정해주는 연산자

let array: [Int] = [1, 2, 3, 4, 5]
 
for element in array[...3] {
    print(element)                    // 1, 2, 3, 4
}
 
for element in array[3...] {
    print(element)                    // 4, 5
}
 
for element in array[..<3] {
    print(element)                    // 1, 2, 3
}

🍏 6. 조건 연산자(삼항연산자)

  • 간단한 조건문을 한 줄에 표현할 때 유용함
  • 단일 조건에 따라 값을 설정해야 할 때,

◻️ 삼항연산자의 기본 형식

조건 ? 표현식1 : 표현식2

조건 (Bool Type) : 참 또는 거짓 이어야 함
조건이 참일경우 표현식1 반환, 거짓일경우 표현식2 반환

let score = 85
let result = score >= 60 ? "Pass" : "Fail"
print(result)  // "Pass" 출력

🍏 7. 패턴 매칭 연산자

◻️ ' ~= ' 패턴 매칭 연산자

  • 패턴 매칭 조건을 평가하는 데 사용됨
  • 주로 switch문에서 사용됨
  • 특정 값이나 범위에 맞는 패턴을 찾아 해당 코드 블록을 실행하는 데 활용
  • 리턴값은 bool이다
pattern ~= value
  • pattern: 패턴을 나타내는 값이나 표현식
  • value: 비교할 값이나 표현식
  • ~= 연산자는 왼쪽에 있는 패턴을 오른쪽에 있는 값과 매치시키는 역할을 함
    패턴 매칭의 결과는 Bool 타입으로 반환,
    패턴이 값과 일치하면 true를 반환하고,
    그렇지 않으면 false를 반환

사용예시

let number = 5

switch number {
case 1..<10:
print("1에서 9 사이의 숫자입니다.")
default:
print("범위를 벗어난 숫자입니다.")
}

profile
개발이 어려운 나를 위한... 개발노트

0개의 댓글