var carName: String?
carName = nil
carName = "tank"
var bestMovieStar: String? = "leo"
let num = Int("10")
// 고급 기능 4가지
// 1. Forced unwrapping > 억지로 박스를 까보기(value값만 가져옴)
// 2. Optional binding (if let) > 부드럽게 박스를 까보자 1
// 3. Optional binding (guard) > 부드럽게 박스를 까보자 2
// 4. Nil coalescing > 박스를 까봤더니, 값이 없으면 디폴트 값을 줘보자
// 1. Forced unwrapping
carName = "그랜져"
print(carName) // Optional("그랜져")\n
print(carName!) // 그랜져\n
// 2. Optional binding (if let)
if let unwrappedCarName = carName {
print(unwrappedCarName)
} else {
// carName = nil
print("Empty Car Name")
}
func printParseInt(from: String){
if let parseInt = Int(from){
print(parseInt)
} else {
print("Not Convert Int")
}
}
printParseInt(from: "100") // 100\n
printParseInt(from: "100돌이입니다") // Not Conver Int
// 3. Optional binding (guard)
func printParseIntt(from: String){
guard let parsedIntt = Int(from) else {
print("Not Convert Int")
return
}
print(parsedIntt)
}
printParseIntt(from: "100") // 100\n
printParseIntt(from: "100돌이입니다") // Not Conver Int
// 4. Nil coalescing
//carName = "GV80"
let myCarName: String = carName ?? "그랜져" // carName == nil 이면 디폴트 값을 넣는다.
::public/Swift