ํฐ์คํ ๋ฆฌ ๋ทฐ
Collection Type
์ฌ๋ฌ ์ธ์ด์์ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ตฌ๋์ ๋ด๋๊ฒ์ฒ๋ผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ ์ ์๋ ๊ธฐ๋ฅ์ ์ง์ํ๋๋ฐ ๊ทธ๊ฒ์ Collection Types๋ผ๊ณ ํฉ๋๋ค.
Swift์์๋ ์ด๋ฐ๊ฒ๋ค์ ์ง์ํ๋๋ฐ์!! ๋ฐ๋ก Array, Dictionary, Set๊ฐ ์์ต๋๋ค! ๋๋ถ๋ถ ์ต์ํ์ค ๊ฒ ๊ฐ๋ค์!
์ด๋ค์ ํน์ฑ์ด ์์ด์.
- ๊ธฐ๋ณธ์ ์ผ๋ก mutableํ๋ค.
- ์ ๋ค๋ฆญ ์ปฌ๋ ์
์ผ๋ก ๊ตฌํ๋๋ค.
mutable์ ์์ ์ด ๊ฐ๋ฅํ๋ค๋ ์๋ฏธ์ด๊ตฌ์. ์ ๋ค๋ฆญ์ ์ฌ๊ธฐ์ ๋ค๋ฃจ๊ธฐ์๋ ์์ด ๋ง์์ ๋ค์์ ๋ค๋ฃจ๋๋ก ํ ๊ฒ์.
๋จผ์ Array ๋ฐฐ์ด์
๋๋ค.
์ต์ํ์๊ฒ ์ง๋ง ๊ฐ๋ฐ์ ๋ฌธ์๋ฅผ ๋ณด๋ ์ต๊ด์ ๊ธฐ๋ฅผ ๊ฒธ ๊ณต์๋ฌธ์์์ ์ ์๋ฅผ ํ๋ฒ ์ดํด ๋ณผ๊ฒ์!

์์๊ฐ ์๊ณ , random-accessํ ํ์
์ด๋ค... ๋ญ๋ง์ด์ง..
array์ index๊ฐ ์์ด์ ์์๊ฐ ์๋ค๋ ๋ง์ ์๊ฒ ๋๋ฐ
random-accessํ๋ค..
์ด๊ฒ๋ ๊ณต์๋ฌธ์๋ก ๊ฐ๋จํ ์์๋ณด๋๋ก ํ์ฃ

์ธ๋ฑ์ค ์ ๊ทผ์ ํจ์จ์ ์ผ๋ก ์ ๊ทผํ๋๋ก ๋์์ฃผ๋ ์น๊ตฌ ๊ฐ๋ค์.
overview๋ฅผ ๋ณด๋ ์์์ ์ธ๋ฑ์ค ์ ๊ทผ์ ๋ํด O(1)์ ์๊ฐ๋ณต์ก๋๋ก ์ ๊ทผํ๋ค๊ณ ํ๋ค์..
๊ถ๊ธํ์ ๋ถ์ ์ฌ๊ธฐ ๋งํฌ ๋ฅผ ๋ณด์๋ฉด ๋ ๊ฒ๊ฐ์์!
array์ ์ ์๋ฅผ ์ดํด ๋ดค์ผ๋ ์ด๋ป๊ฒ ์ฌ์ฉ๋๋์ง ๋ด์ผ๊ฒ ์ฃ ?
๋น ๋ฐฐ์ด ์์ฑํ๊ธฐ
๋น ๋ฐฐ์ด์ ์ ์ธ์ ์๋์ ๊ฐ์ด ํด์ค ์ ์์ด์!
var intArray1: [Int] = []
var intArray2 = [Int]()
var intArray3: Array<Int> = []
๋ฐฐ์ด ์์์ ํ์ ์ ๋ค๋ฅธ ํ์ ์ ๋ฃ์ด๋ ๋ฉ๋๋ค!
๊ทธ๋ ๋ค๋ฉด ์์๊ฐ ์๋ ๋ฐฐ์ด๋ ํ๋ฒ ์ ์ธํด ๋ณผ๊ฒ์.
var intArray5: [Int] = [1,2,3]
var intArray6 = [1,2,3]
์์ฒ๋ผ ๋ฐฐ์ด์ ์ ์ธํด ๋ณด์๋๋ฐ์!!
intArray6์ฒ๋ผ ํด๋ swift์์ ํ์
์ถ๋ก ์ ํตํด ์ ์ธ์ ํ ์ ์์ต๋๋ค!(์ด ๋ฐฉ๋ฒ์ ์ฝ๋ ๊ฐ๋
์ฑ๋๋ฌธ์ ์ถ์ฒํ์ง ์์์)
(ํ์ง๋ง ๋น๋ฐฐ์ด์ด๋, ์์์ ํ์
์ด ๋ค๋ฅด๋ฉด ์๋ฉ๋๋ค!!!!!)
์์๊ฐ ์๋ก ๋ค๋ฅธ ํ์
์ธ ๋ฐฐ์ด์ผ ์ ์ธํ๊ณ ์ถ์ผ์๋ค๋ฉด ์ด๋ ๊ฒ ์ ์ธํ์๋ฉด ๋ฉ๋๋ค.
var intArray7: [Any] = [1,"neoguri"]
var intArray8 = [1,"neoguri"] as Any
Anyํ์ ์ผ๋ก ์ ์ธํด ์ฃผ์๊ฑฐ๋ ํ์ ์บ์คํ ์ ํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
์ด๋ฒ์๋ ๋ฐฐ์ด์ ์์์ ์ ๊ทผํด ๋ณผ๊ฒ์!!
๋ฐฐ์ด์ ์ธ๋ฑ์ค ๊ฐ์ ๋๊ดํธ ์์ ๋ฃ์ด ํ์ธํ๊ฑฐ๋
๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ์ธ๋ฑ์ค์ ๊ฐ์ด๋ ๋ง์ง๋ง ์ธ๋ฑ์ค์ ๊ฐ์ ํ์ธํ ์ ์์ด์~
firstIndex๋ ๊ฐ์ ๊ฐ์ด ์์ ๋ ๊ฐ์ฅ ์์ ์๋ ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์ถ๋ ฅํ๊ฒ ๋ฉ๋๋ค!
var intArray5: [Int] = [1,2,3]
var intArray6 = [1,2,3]
// 0๋ฒ์งธ ์ธ๋ฑ์ค์ ๊ฐ
intArray5[0] // 1
intArray5.first // 1
// ๋ง์ง๋ง ์ธ๋ฑ์ค์ ๊ฐ
intArray6[2] // 3
intArray6.last // 3
intArray5.firstIndex(of: 1) // 1
์ด๋ ๊ฒ ์ฝ๊ฒ ํ์ธํ ์ ์์ต๋๋ค.
collection Type์ ์์ ๋ ๊ฐ๋ฅํ๋ค๊ณ ํ์ฃ ?
ํ๋ฒ ํด๋ณผ๊ฒ์!
๋ฐฐ์ด์์ ์์๋ฅผ ๋ฃ์ด๋ณผ๊ฒ์!
var intArray5: [Int] = [1,2,3]
var intArray6 = [1,2,3]
intArray5.append(1) // [1,2,3,1]
intArray5.insert(4, at: 3) // [1,2,3,4,1]
print(intArray5 + [10,11]) // [1,2,3,4,1,10,11]
print(intArray5.append(contentsOf: [10, 11])) // [1,2,3,4,1,10,11]
// ์ํ๋ ์ธ๋ฑ์ค์ ๋ฃ์ ์ ์์
// [1,2,3,4,1,10,11]
// ์ธ๋ฑ์ค๊ฐ 5 ์ด๋ฏ๋ก ์ ์ ๊ฐ์
// print(intArray5.append(contentsOf: [10, 11], at: 5)
intArray += [20, 22] // ์ด๋ ๊ฒ๋ ์์๋ฅผ ๋ฃ์ ์ ์์ด์
์ด๋ฒ์ ๋ฐฐ์ด์์ ์์๋ฅผ ์ญ์ ํด ๋ณผ๊ฒ์!
intArray5: [Int] = [1, 2, 3]
intArray5.remove(at:0) // intArray5 = [2, 3]
intArray5.removeLast() // ๋ง์ง๋ง ์์ ์ญ์ [2]
intArray5.removeAll() // ์์ ๋ชจ๋ ์ญ์ []
์ด๋ ๊ฒ ๊ฐ๋จํ ์ญ์ ๋ฅผ ํ ์ ์์ด์.
๋ ๋ง์ ๋ฐฐ์ด ๋ฉ์๋ ๋ค์ด ์์ง๋ง ๋ค์์ ๋ ์ถ๊ฐํด ๋ณผ๊ฒ์!!
Swift๋ก ์ฝํ
๋ฅผ ์ค๋นํ์๋ ๋ถ๋ค์ ๋ฐฐ์ด์ ๋ํด ํ๋ฒ ์ ๋ฆฌํด ๋ณด๋ฉด ์ข์๊ฒ ๊ฐ์์!(๋๋....)
๊ฐ์ฌํฉ๋๋ค!!
'iOS > Swift' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [iOS/Swift] Closure(ํด๋ก์ ) ์์๋ณด๊ธฐ (0) | 2022.05.27 |
|---|---|
| [iOS/Swift] Switch case ๋ฌธ ์์๋ณด๊ธฐ! (0) | 2022.05.26 |
| [iOS/Swift] Collection Type - Dictionary(๋์ ๋๋ฆฌ) (0) | 2022.05.25 |
| [iOS/Swift] Collection Type - Set(์งํฉ) (0) | 2022.05.24 |
| [iOS/Swift] iOS/Swfit ๊ณต๋ถ๋ ์ด๋ป๊ฒ ํ ๊น? (0) | 2022.05.21 |
- Total
- Today
- Yesterday
- ํ ์คํธ
- ์คํ ๋ ์ด์์
- test
- Protocol
- ios
- swift
- Unit Test
- observable
- Swift Network
- RxSwift
- Property
- XCTest
- Clean
- ํ๋กํผํฐ
- ์ค์ํํธ ํ๋กํ ์ฝ
- ํ๋กํ ์ฝ
- swift urlsession
- set
- RX
- swift ๊ณต๋ถ
- network
- ์ค์ํํธ
- ์ค์ํํธ map
- ๊ณต๋ถ
- func
- xcode
- autolayout
- URLSession
- swift ํ๋กํ ์ฝ
- ์ค์ํํธ ๊ณต๋ถ
| ์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |