๐์ถ๋ ฅ๋ฌธ
swift์ ์ถ๋ ฅ๋ฌธ์
-print() : ๊ฐ๋จํ ๋ฌธ์์ด, ๋ฐ์ดํฐ ๋ฑ์ ์ถ๋ ฅํ ๋ ์ฌ์ฉ๋จ
-dump() : ์ธ์คํด์ค์ ์์ธํ ์ค๋ช ์ ์ถ๋ ฅํ ๋
print()๋
seperator() = ๊ตฌ๋ถ์: ์ผํ ์ฐ์์๋ ๊ทธ ์ฌ์ด๋ฅผ ๊ตฌ๋ถํ๋ ๊ฒ์ด default๋ก " "์ด๋ค.
terminator() = ์ข ๊ฒฐ์ : print๊ฐ ๋๋ฌ์๋ ๋ฃ๋ ๋ฌธ์๊ฐ default๋ก "\n"์ผ๋ก ์ ํด์ ธ์๋ค.
๊ฐ์ฒด๋ฅผ ์ถ๋ ฅํ ๋๋ dump๋ฅผ ์ฌ์ฉํ๋ฉด, ๊ทธ ์์ ๊ฐ์ฒด ์ ๋ณด๋ฅผ ์์ธํ ๋ณผ ์ ์๋ค.
๋์ ๋๋ฆฌ ์ ๋ณด๋ ์์ธํ ์๋ ค์ค๋ค!
๐๋ฌธ์์ด ๋ณด๊ฐ๋ฒ == ๋ฌธ์์ด์ ์ด์ด๋๊ฐ๋ ๋ฐฉ๋ฒ
๋ณด๊ฐ๋ฒ : ๋ ์ ์ ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ
๐์์์ ๋ณ์
๋ณ์ : ๋ณํ ์ ์๋ ๊ฐ - var
์์ : ๊ณ ์ ๋ ๊ฐ - let
๐์ ์ธ
(ํค์๋) (์ด๋ฆ) : (ํ์ ) = (๊ฐ)
var name : String = "yujindonut"
let age : Int = 10
Swift๋ ๊ฐ์ ๋ฐ๋ผ์ ํ์ ์ ์ถ๋ก ํด์ ํ์ ์ ์ง์ ํ๊ธฐ๋ ํ๋ค.
(ํค์๋) (์ด๋ฆ) = (๊ฐ)
๐๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์
โ Bool
true / false ๋ฅผ ๋ด๋๋ค! Swift์์๋ 0 / 1 ๋์ ์ด ๋ถ๊ฐํ๋ค!!!
โ Int
์ ์ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ด์ ์ ์๋ค.
0.1๊ณผ ๊ฐ์ ์ ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ ์ซ์๋ฅผ ๋ฃ์ ๊ฒฝ์ฐ ์ค๋ฅ๋ฐ์
โ UInt : Unsigned Integer
์์ ์ ์ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ด์ ์ ์๋ค. 0ํฌํจ
Int ๋ณ์๋ฅผ Unit๋ณ์์ ๋์ ํ๋ฉด ์ปดํ์ผ ์๋ฌ๊ฐ ๋ฐ์ํจ
โ Float / Double
32bit / 64bit ์ค์ ๋ฐ์ดํฐ๋ฅผ ๋ด์ ์ ์์
์๋ก ๋ค๋ฅธ ํ์ ๋ผ๋ฆฌ๋ ๋ฐ๋ก ๋์ ์ด ๋ถ๊ฐ๋ฅํจ
โ Character
๋ฌธ์ ํ์ ์ ๋ด์ ์ ์์
๋ฌธ์์ด("๋ฌธ์์ด")์ ๋์ ์ ์ค๋ฅ! ์ค์ง ๋ฌธ์! ('๋ฌธ์')
โ String
๋ฌธ์(Character)ํ๊ณผ๋ ๊ฒฐํฉ์ด ๋์ง ์๋๋ค
๋ฌธ์์ด๋ผ๋ฆฌ๋ ๊ฒฐํฉ ๊ฐ๋ฅ
์ฌ๋ฌ์ค์ ๋ฃ์๋๋ ๊ฒน๋ฐ์ดํ(""" ~~ """)
โ Any
๋ค์ํ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ
Any๋ฐ์ดํฐ ํ์ ๋ค๋ฅธ ๋ณ์์ ๋์ ์ ๋ฐ๋์!!ํ๋ณํ์ด ํ์ํ๋ค
var someAny : Any = 100
someAny = 123.12 // ์ค์๋ ๋์ ๊ฐ๋ฅ
someAny = "HI" // ๋ฌธ์์ด๋ ๋์ ๊ฐ๋ฅ
let someNum : Double = someAny // ์ปดํ์ผ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค
โ AnyObject
Any๋ณด๋ค๋ ์ข์ ์๋ฏธ
๋ชจ๋ ํด๋์ค์ ์ธ์คํด์ค ๋์ ๊ฐ๋ฅ
์ผ๋ฐ ๋ฐ์ดํฐ ํ์ ๋์ ํ๋ฉด ์๋ฌ๊ฐ ๋ฐ์ํ๋ค
โ Nil
ํน์ ํ์ ์ด ์๋๋ผ '์์'์ ์๋ฏธํ๋ ์ค์ํํธ ํค์๋
Any / AnyObject์๋ nil ๋์ ์ด ๋ถ๊ฐ๋ฅํ๋ค
Optional ๋ณ์์๋ง ๋์ ์ด ๊ฐ๋ฅํ๋ค
๐์งํฉ(Collection)
โ Array
"์์๊ฐ ์๋" , "์ธ๋ฑ์ค๋ฅผ ํตํด"
var integers : Array<Int> = Array<Int>()
var integers : Array<Int> = [Int]()
var integers : [Int] = [Int]()
var integers : [Int] = []
var integers : [Int] = Array<Int>()
var integers = [Int]()
Array์ด๋ฆ.append(์์) : ๋ฐฐ์ด์ ์์๋ฅผ ๋ฃ๊ณ ์ถ์๋
Array์ด๋ฆ.contains(์์) : ์๋ค๋ฉด true/false๋ก ๋ฐํ๋จ
Array์ด๋ฆ.remove(at: (์ธ๋ฑ์ค๋ฒํธ)) : ํด๋น ์ธ๋ฑ์ค ๋ฒํธ์ ์์๋ฅผ ์ง์ฐ๊ณ ์ถ์๋
Array์ด๋ฆ.removeLast() : Array์ ๋ง์ง๋ง ์์๋ฅผ ์ง์ฐ๊ณ ์ถ์๋
Array์ด๋ฆ.removeAll() : ๋ชจ๋ ์์ ์ญ์
Array์ด๋ฆ.count : ์์ ๊ฐ์ - Int๋ฐํ
Array์ด๋ฆ.firstIndex(of : 100) : 100์ด ๊ฐ์ฅ ์ฒซ๋ฒ์งธ๋ก ๋์ค๋ index๋ฅผ ๋ฐํ
Array์ด๋ฆ.lastIndex(of : ์์)
Array์ด๋ฆ[index] = ๋์ ํ๊ณ ์ถ์ ์์
Array์ด๋ฆ.first : ์ฒซ๋ฒ์งธ ๊ฐ
Array์ด๋ฆ.last : ๋ง์ง๋ง ๊ฐ
Array์ด๋ฆ[Index] : ํด๋น index์ ์์๊ฐ
โ Dictionary
"Key ์ Value ์์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐ์ดํฐ ์ปฌ๋ ์ "
"์์๊ฐ ๋ณด์ฅ ๋์ง ์๋ "
"key๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๊ทผํ ๋ ์ ์ฉ"
var dic : [Int : String] = [:]
var dic = [Int : String]()
var dic : Dictionary = [Int:String]()
var dic : Dictionary<Int,String> = Dictionary<Int, String>()
var dic : [Int : String] = [1:"zedd", 2:"swift", 3:"hi"] //์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ
dic.updateValue("๋ฐ๊พธ๊ณ ์ถ์๊ฐ", forKey: 3) 3์ด key์ธ ๋ถ๋ถ์ "๋ฐ๊พธ๊ณ ์ถ์๊ฐ"์ด ๋์ ์ด ๋ ๊ฒ!
dictionary์ด๋ฆ[ํค๊ฐ]! // ๋๋ํ : key๊ฐ์ ๋ํ value๊ฐ ์๋์ง ์๋์ง๋ฅผ ๋ชจ๋ฅด๊ธฐ ๋๋ฌธ์, optionalํํ๋ก ๋ฐํํ๋ค.
๊ฐ์ ์ฌ์ฉํ ๋์๋ ์ธ๋ํ !(๊ฐ) ์ ์ฌ์ฉํด ๊ฐ์ ๊บผ๋ด์จ๋ค!
dic.removeValue(forKey : ํค๊ฐ) key๊ฐ์ ํตํด ์ ๊ทผํด ์ญ์
dic.removeAll() : ์ ๋ถ ์ญ์
โ Set
"์งํฉ"
"์์๊ฐ ๋ณด์ฅ ๋์ง ์๋ "
"๋ฉค๋ฒ๊ฐ ์ ์ผํ ๊ฒ์ ๋ณด์ฅํ๋"
integerSet.insert()
integerSet.Contains()
integerSet.remove()
integerSet.removeFirst()
integerSet.count
๐ํจ์
func ํจ์์ด๋ฆ(๋งค๊ฐ๋ณ์ ์ด๋ฆ : ๋งค๊ฐ๋ณ์ํ์ , ๋งค๊ฐ๋ณ์์ด๋ฆ : ๋งค๊ฐ๋ณ์ํ์ ) -> ๋ฐํํ์ {
return ๋ฐํ๊ฐ
}
๋ฐํํ์ ์ Voidํํ๋ก ๋ฐํํ๊ฑฐ๋ ์๋ต ๊ฐ๋ฅ
func printSum(sum : Int) {
print(sum)
}
ํจ์ ํธ์ถ
func sum (a:Int, b: Int) -> Int {
return a + b
}
sum(a : 3, b : 5)
โ ์ ๋ฌ์ธ์ ๋ ์ด๋ธ
ํจ์ ๋ด๋ถ์์ ์ฐ๋ ์ด๋ฆ๊ณผ ํธ์ถ ํ ๋ ์ฐ๋ ์ด๋ฆ์ ๋ถ๋ฆฌํ ๋ ์ฌ์ฉ๋๋ค
func greeting(to friend : String, from me : String) {
print("Hello \(friend)! I'm \(me)")
}
greeting(to : "hana", from : "pig")
โ ๊ฐ๋ณ ๋งค๊ฐ๋ณ์ ๊ธฐ๋ฅ ์ ๊ณต
๊ฐ๋ณ ๋งค๊ฐ๋ณ์ ๋ถ๋ถ์ ๋ฐ์ดํฐ๊ฐ 0 ~ ์ฌ๋ฌ๊ฐ๊ฐ ์ฌ ์ ์๋ค.
func sayHi(me : String, friends:String ... ) -> String{
return "hello \(friends)! I'm \(me)!"
}
print(sayHi(me : "yujindonut", friends:"1","2","3"))
//hello ["1","2","3"]! I'm yujindonut
print(sayHi(me : "yujindonut"))
//hello []! I'm yujindonut
โ ํจ์๋ ํ ๋น์ด ๊ฐ๋ฅํ๋ค
ํจ์๋ ํ ๋น๋ฟ ์๋๋ผ, ์ค์ง์ ์ธ ๋งค๊ฐ๋ณ์๊ฐ ๋ ์ ์๋ค.
ํจ์์ ๋ฐํ๊ฐ์ผ๋ก ํจ์๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
func greeting(to friend : String, from me : String){
print("Hello \(friend)! I'm \(me)")
}
var someFunction : (String, String) -> Void = greeting(to:from:)
someFunction("eric", "apple") // Hello eric! I'm apple
lef f : (Data) -> Void = {}
func doSometing(withData data: Data, action : (Data) -> Void) {
action(data)
}
doSometing(data,action)
'๊ธฐํ > iOS๐' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[iOS์ค๋ฅ] Value of type 'UIViewController' has no member 'messageName' (0) | 2022.04.08 |
---|---|
[iOS์ค๋ฅ]Cannot assign value of type 'String?' to type 'UILabel?' (0) | 2022.04.07 |
[iOS] ์ฑ ํ๋ฉด ์์ฑํด๋ณด๊ธฐ / ์์ (Asset) ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ / ์ด๋ฏธ์ง ๋ฃ๊ธฐ (0) | 2022.04.04 |
[iOS] Xcode ์ฌ์ฉ๋ฒ / ํ๋ก์ ํธ ์์ฑํ๊ธฐ (0) | 2022.04.04 |
[IOS] Xcode Git ์ฐ๋ํ๊ธฐ (0) | 2022.04.04 |