IOS/Swift
[Swift ๊ธฐ์ด ๋ฌธ๋ฒ] ๋ฐ์ดํฐ์ ์งํฉ - Array, Dictionary, Set
hsooooo
2022. 3. 14. 11:44
๐ ๋ฐ์ดํฐ์ ์งํฉ(์ปฌ๋ ์ ) - Array, Dictionary, Set
- Array : "์์๊ฐ ์๋" ๋ฆฌ์คํธ ์ปฌ๋ ์ ์ด๋ฉฐ, ์ธ๋ฑ์ค(์์)๋ฅผ ํตํด ๊ฐ์ ์ ๊ทผ์ ํ ์ ์๋ค.
var integers: Array<Int> = Array<Int>()
# Array๋ฅผ ํํํ๋ ๋ค์ํ ๋ฐฉ๋ฒ
var integers: Array<Int> = [Int]()
var integers: Array<Int> = []
var integers: [Int] = Array<Int>()
var integers: [Int] = [Int]()
var integers: [Int] = []
var integers = [Int]()
- Array์์ ์ฌ์ฉ๋๋ ๋ฉ์๋
- Array์ด๋ฆ.append(์์) : Array์ ์์๋ฅผ ๋ด๊ณ ์ถ์ ๋
- Array์ด๋ฆ.contains(์์) : Array์ ์์๊ฐ ์๋์ง ํ์ธํด๋ณด๊ณ ์ถ์ ๋, ์๋ค๋ฉด true / ์๋ค๋ฉด false๋ก ๋ฐํ๋๋ค.
- Array์ด๋ฆ.remove(at : (์ง์ฐ๊ณ ์ถ์ ์ธ๋ฑ์ค ๋ฒํธ)) : Array์ ์์๋ฅผ ์ง์ฐ๊ณ ์ถ์ ๋
- Array์ด๋ฆ.removeLast() : Array์ ๋ง์ง๋ง ์์๋ฅผ ์ง์ฐ๊ณ ์ถ์ ๋
- Array์ด๋ฆ.removeAll() : Array์ ๋ชจ๋ ์์๋ฅผ ์ง์ฐ๊ณ ์ถ์ ๋
- Array์ด๋ฆ.count : Array์ ์์ ๊ฐฏ์๋ฅผ ์๊ณ ์ถ์ ๋
- Array์ด๋ฆ.firstIndex(of: ์์) / Array์ด๋ฆ.lastIndex(of: ์์) : ๊ฐ์ฅ ์ฒซ๋ฒ์งธ, ๋ง์ง๋ง์ผ๋ก ๋์ค๋ index๋ฅผ ์๊ณ ์ถ์ ๋
- Array์ด๋ฆ[index] = ์์ : Array์ ์์๋ฅผ ๊ต์ฒดํ๊ณ ์ถ์ ๋
- Array์ด๋ฆ.first / Array์ด๋ฆ.last : Array์ ์ฒซ๋ฒ์งธ / ๋ง์ง๋ง์ ๊ฐ์ ์๊ณ ์ถ์ ๋
- Array์ด๋ฆ[index] : Array์ ํน์ index์ ๊ฐ์ ์๊ณ ์ถ์ ๋
Array๋ฅผ let์ผ๋ก ์ ์ธํ๋ฉด ๋ถ๋ณ Array๊ฐ ๋๋ค. ์ด๋, ์ญ์ , ์ถ๊ฐ ๋ฑ ์์์ ๊ฐ์ ๊ฐ์ ธ์ค๋ ๊ฒ์ ๋์ง๋ง ์์๋ฅผ ์์ ํ๋ ํ์๋ ๋ถ๊ฐ๋ฅํ๋ค.
Set(= ์งํฉ)์ ์์๊ฐ ์กด์ฌํ์ง ์๊ณ , ๋ฉค๋ฒ๊ฐ ์ ์ผํ ๊ฒ์ ๋ณด์ฅํ๋ ๋ฐ์ดํฐ ์ปฌ๋ ์ ํ์ ์ด๋ค.
์์ ์ฝ์ , ์ญ์ , ๊ฐฏ์์ ๋ฉ์๋๋ Array์ ๋์ผํ๋ค. ๋์ index๋ฅผ ํตํด ์ ๊ทผํ๋ ๋ฐฉ์์ Set์์๋ ์์ ๊ฐ๋ ์ด ์๊ธฐ ๋๋ฌธ์ ๋ถ๊ฐ๋ฅํ๋ค.
- Dictionary : Key์ Value ์์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐ์ดํฐ ์ปฌ๋ ์ ์ด๋ฉฐ, Array์๋ ๋ค๋ฅด๊ฒ "์์"๊ฐ ์ ๋ ๋ณด์ฅ๋์ง ์๋๋ค. Key ๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๊ทผํ ๋ Dictionary ํํ๋ ์ ์ฉํ๋ค.
# Dictionary๋ฅผ ํํํ๋ ๋ค์ํ ๋ฐฉ๋ฒ
var dic : [Int: String] = [:]
var dic2 = [Int: String]()
var dic3 : Dictionary = [Int:String]()
var dic4 : Dictionary<Int, String> = Dictionary<Int, String>()
- Dictionary์์ ์ฌ์ฉ๋๋ ๋ฉ์๋
- Dictionary์ด๋ฆ.updateValue("key ๊ฐ", forKey: (๋ฐ๊พธ๊ณ ์ถ์ Value ๊ฐ)) : Key๊ฐ์ ์๊ณ ์๋ค๋ฉด Value๋ฅผ ์์ ํ ์ ์๋ค.
- Dictionary์ด๋ฆ[(Key ๊ฐ)] = (Value ๊ฐ) : Key, Value ๊ฐ์ ํตํด ์๋ก์ด ๋ฐ์ดํฐ๊ฐ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅ.
์ด๋, dic[1]! ์ฒ๋ผ ๋ค์ !๊ฐ ๋ถ๊ฒ ๋๋๋ฐ Swift ์ ์ฅ์์ ์ด key ๊ฐ์ ๋ํ Value๊ฐ ์๋์ง ์๋์ง๋ฅผ ๋ชจ๋ฅด๊ธฐ ๋๋ฌธ์, Optionalํํ๋ก ๋ฐํ
๋ฐ๋ผ์ ๊ฐ์ ์ฌ์ฉํ ๋์๋ !(์ธ๋ํ)์ ์ฌ์ฉํด ๊ฐ์ ๊บผ๋ด์จ๋ค. - Dictionary์ด๋ฆ.removeValue(forKey: ํค๊ฐ) : Dictionary์ ๊ฐ์ ์ญ์ ํ ๋๋ Key ๊ฐ์ ํตํด ์ ๊ทผ
- Dictionary์ด๋ฆ.removeAll() : Dictionary์ ๋ชจ๋ Key์ Value๋ฅผ ์ญ์ ํ๊ณ ์ถ์ ๋
let์ผ๋ก ๋ถ๋ณ Dictionary๋ฅผ ์ ์ธํ๋ฉด ๊ฐ ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ๋ค.