Skip to content

#옵셔널 optional(회원가입 시 정보 확인) #1

@yoogail105

Description

@yoogail105

#옵셔널 optional(회원가입 시 정보 확인)

📎 Swift에서 자료형을 분류하는 기준들

  • 기준1: 값이 하나 vs 여러개 ?
    • 기본자료형: Int, String, Bool ##등
    • 집단 자료형: Array, Dictionary, Set, Tuple
  • 기준2: nil을 받아들일 수 있는지 vs 없는지 ?
    • 옵셔널 타입: nil(O)
    • 옵셔널이 아닌 타입: nil(X)

📎 옵셔널 언래핑

  • 강제 해제 !
    • 간편함
    • but. nil값이 들어있으면 언래핑되면서 앱이 종료된다.(오류)
  • 옵셔널 바인딩 if let guard
  • 옵셔널 체이닝

📎 옵셔널 사용 예시

var email: String = "abc@d.com"
var phoneNumber = "01012345678"
type(of: email)

*type(of:): 자료형에 대한 정보를 확인할 수 있다.


⛔️ 주의사항
Optional을 사용하지 않으면, email이나 phoneNumber에 잘못된 값이 입력되었을 때 오류가 난다.

‼️해결방법

// email 대응하기
var email: String = "abc@d.com"
if email == nil {
    print("이메일을 잘못 작성하셨습니다.")
} else {
    print(email!) // 강제 해제(이미 nil이 아닌 것을 확인했기 때문에 가능)
}

// phoneNumber 대응하기
var phoneNumber: String? = "01021232132" // "": String
var resultPhoneNumber = Int(phoneNumber!)
let phoneResult = resultPhoneNumber != nil ? phoneNumber! : "전화번호를 잘못 작성하셨습니다."
print(phoneResult)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions