๊ณต๋ถํ ๊ฒ
๋ถ์คํธ์ฝ์ค - iOS ํ๋ก๊ทธ๋๋ฐ์ ์ํ ์ค์ํํธ ๊ธฐ์ด
์๊ฒ๋ ๊ฒ
1. ์ต์ ๋
// someOptionalParm์ nil์ด ํ ๋น๋ ์ ์์
func someFunction(someOptionalParam: Int?) {
// ....
}
/// someOptionalParm์ nil์ด ํ ๋น๋ ์ ์์
func someFunction(someOptionalParam: Int) {
// ....
}
- nil์ด ํ ๋น๋ ์ ์๋์ง ์๋์ง๋ฅผ ํํ
- nil์ ๊ฐ๋ฅ์ฑ์ ๋ช ์์ (์ฝ๋)์ผ๋ก ํํ ๊ฐ๋ฅ
- ์ต์ ๋์ด ์๋ ๊ฒฝ์ฐ nil ์ฒดํฌ ์์ด ๋ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
- nil๋ก ์ธํ ์์ธ ์ํฉ์ ์ต์ํ
2. ์ต์ ๋ ํํ ๋ฐฉ๋ฒ
// ์์์ ์ถ์ถ ์ต์
๋
var optionalValue: Int! = 10
switch optionValue {
case .none:
print("This is none!")
case .some(let value)
print("This is \(value)")
}
// ๊ธฐ์กด ๋ณ์์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅ
optionValue = optionValue + 1
print(optionalValue) // Optional(11)
// nil ํ ๋น ๊ฐ๋ฅ
optionValue = nil
// ์๋ชป๋ ์ ๊ทผ์ผ๋ก ์ธํ ๋ฐํ์ ์๋ฌ
optionalValue = optionalValue + 1
// #####################################
var optionalValue: Int? = 10
// nil ํ ๋น ๊ฐ๋ฅ
optionalValue = nil
// ๊ธฐ์กด ๋ณ์์ฒ๋ผ ์ฌ์ฉ ๋ถ๊ฐ
// ์ต์
๋์ ๊ธฐ์กด ๋ณ์์ ๋ค๋ฅธ ํ์
optionalValue = optionalValue + 1
3. ์ต์ ๋ ์ถ์ถ
- ์ต์ ๋ ๋ฐ์ธ๋ฉ ๋ฐฉ์
var myName: String? = nil
// name ๋ณ์๋ if-else ๊ตฌ๋ฌธ ๋ด๋ถ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
if let name:String = myName {
print(name)
} else {
print("myName is nil")
}
var myName = "kodo"
var yourName: String? = nil
// ,๋ฅผ ์ฌ์ฉํด์ ์ฌ๋ฌ ๊ฐ์ ์ต์
๋์ ํ ๋ฒ์ ๋ฐ์ธ๋ฉ ํ ์ ์์
// ํ์ฌ yourName์ด nil์ด๋ฏ๋ก ์ถ๋ ฅ๋ฌธ์ด ์คํ๋์ง ์์
if let name = myName, let friend = yourName {
print("\(name), \(friend)")
}
- ๊ฐ์ ์ถ์ถ ๋ฐฉ์
var myName: String! = nil
// ๋ฐํ์ ์๋ฌ
print(myName)
'๐ป ๊ฐ๋ฐ > iOS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[iOS / Swift] ํด๋ก์ ์ ํ๋กํผํฐ, ๊ฐ๋ณ๊ฒ ์์๋ณด๊ธฐ (0) | 2022.10.02 |
---|---|
[iOS / Swift] ์์ VS ์ต์คํ ์ (0) | 2022.09.27 |
[TIL] 22.08.24 (0) | 2022.08.24 |
[TIL] 22.06.03 (0) | 2022.06.03 |
[TIL] 22.05.27 (0) | 2022.05.27 |