[Swift] 조건문, 연산자, 함수 활용 기초 정리

1. 조건문 (if, else if, else)

  • 조건을 만족하는지 검사하여 실행 흐름을 제어할 수 있음

let a = 12

if a % 2 == 0 {
    print("짝수")
} else {
    print("홀수")
}

요일 구하기 (Calendar API 사용):


let weekday = Calendar.current.component(.weekday, from: .now)

if weekday == 1 {
    print("일요일")
} else if weekday == 2 {
    print("월요일")
}
// ...


2. 비교 연산자 & 논리 연산자

비교 연산자

연산자설명
==같다
!=같지 않다
<, <=, >, >=미만, 이하, 초과, 이상

논리 연산자

연산자설명
&&논리 AND
!논리 NOT

3. 문자열 유효성 검사


let id = "KDN"

if id.count > 0 { }
if !id.isEmpty { }
if (5...20).contains(id.count) { }


4. 범위 연산자

연산자설명
1...101 이상 10 이하 (Closed Range)
1..<101 이상 10 미만 (Half-Open Range)
...1010 이하 모든 값 (One-sided)
1...1 이상 모든 값 (One-sided)

5. 함수


func sayHello() {
    print("Hello")
}

func getSomething() -> Int {
    return 0
}

func add(a: Int, b: Int) -> Int {
    a + b // return 생략 가능 (implicit return)
}


6. 계산기 함수 예제 (사칙연산)

  • case에서 break가 없어도 자동 종료된다!
  • 다음 문장으로 넘어가게 하려면 명시적으로 fallthrough 를 사용해야한다

func calculate(op: String, a: Int, b: Int) -> Int {
    switch op {
    case "+": return a + b
    case "-": return a - b
    case "*": return a * b
    case "/": return a / b
    default:
        print("지원하지 않는 연산자입니다.")
        return 0
    }
}

calculate(op: "*", a: 3, b: 5)

7. Guard문 알아보기

  • 조건이 참이면 계속 실행, 거짓이면 빠져나감 (return, break)
  • else 절이 필수이다 !
  • 조건 검사나 옵셔널 바인딩에서 쓰인다고함
guard 조건 else {
    // 조건이 false일 때 실행되는 블럭
    // return, break, continue, throw 등 꼭 '빠져나가야 함'
}
항목ifguard
흐름조건이 참일 때 코드 실행조건이 거짓이면 빠르게 탈출
가독성중첩될 수 있음깔끔하게 작성 가능
func sayHello(name: String?) {
    guard let name = name else {
        print("이름이 없어요. 인사할 수 없어요.")
        // true면 바로 빠져나감
        return
    }

    print("안녕하세요, \(name)님!")
}

© 2021. All rights reserved.