랭귀지/SWIFT
[문법요약] 변수 및 연산자
유키공
2017. 12. 12. 11:13
- 변수 및 연산자
//: Playground - noun: a place where people can play import UIKit var str = "손흥민" //str = nil // Error var name: String? = "손흥민" var name2: Optional<String> = "흥민" print(name ?? "nil 이라서 기본값 출력함") print(name!) var name3: String! = "손흥민" var name4: ImplicitlyUnwrappedOptiona<String> = "손흥민" print(name3) if name != nil { print(name!) } else { print("nil 입니다") } // 옵셔널 바인딩 if let n = name { print("#########" + n) } else { print("nil 입니다") } let dic = ["KR": "서울", "US": "워싱턴"] print(dic["K"] ?? "기본값") if let v = dic["KR"] { print(v + " 강남구 역삼동") } else { print("nil 입니다") } let weight = "67" if let iWeight = Int(weight) { print(iWeight) } //guard let w = Int(weight) else { // print("nil 입니다") // return //} // //print(w) // 옵셔널 체이닝(Optional Chaining) class Birthday { var year: Int = 0 var month: Int? init(year: Int, month: Int) { self.year = year self.month = month } } class UserInfo { var birthday: Birthday? init() { birthday = Birthday(year: 1980, month: 4) } } class CompanyInfo { var userInfo: UserInfo? init() { userInfo = UserInfo() } } var companyInfo: CompanyInfo? = CompanyInfo() if let cInfo = companyInfo { if let uInfo = cInfo.userInfo { if let birth = uInfo.birthday { if let mon = birth.month { print(mon) } } } } print(companyInfo?.userInfo?.birthday?.month)