map
-
Swift Concurrency - map & forEachConcurrency 2023. 3. 9. 07:51
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ map๊ณผ forEach์ ๋ํด Swift Concurrency ์ธ์์ผ๋ก ๊ฐ์ ธ์ ๋น๋๊ธฐ ๋ฐ ๋์(๋ณ๋ ฌ) ์ฒ๋ฆฌ๋ฅผ ํด๋ณด๊ฒ ์ต๋๋ค๐ ์ฐ๋ฆฌ๋ ๋ง์ ๋ฐ์ดํฐ๋ค์ด ๋ค์ด์ฌ๋ map๊ณผ forEach๋ก ์ข ์ข ๋ค๋ค์ฃผ๊ณค ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ํด๋น ๋ฐ์ดํฐ๋ค์ ๋ค๋ค์ค๋ ํญ์ ๋น๋๊ธฐ์ ์ผ๋ก ์ผ์ด๋์ง ์์๋ฟ๋๋ผ ํด๋น ๋ด๋ถ ์์ ๋ค์ ๋์ ์ฒ๋ฆฌ๋ฅผ ํ์ง ์์ต๋๋ค. ์ฆ ํ ์ค๋ ๋์์ ๋๊ฒ๋๊ณ ์ฒ๋ฆฌํ ๊ฒ์ด ๋ง์์ง๋ฉด ๋ค๋ฅธ ์์ ์ ๋ณ๋ชฉ์ด ์๊ธธ๋๊ฐ ์์ฃ . ๊ทธ๋์ ์ด๋ฒ ์ฃผ์ ๋ ์ด๋ฐ ๋ฐ์ดํฐ ๋ณํ์ ์ํํ ๋ Concurrency์ ๋์์ฑ ์์คํ ์ ํ์ฉํด๋ณด๋ ค๊ณ ํฉ๋๋ค! ๋๊ธฐ ๋ณํ ์ฐ์ ์ฐ๋ฆฌ๊ฐ ์์ฃผ ์ต์ํ ๊ตฌ์กฐ๋ถํฐ ๋ณผ๊ป์. class MovieListViewController: UIViewController { privat..
-
RxSwift - Transforming OperatorRxSwift 2021. 11. 10. 20:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ ์ด์ Filtering Operator์ ์ด์ด Transforming Operator์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป Transforming Operator? ๋ณํํด์ฃผ๋ ์คํผ๋ ์ดํฐ! ์ด๋ค๊ฒ์ ๋ณํํด์ค๊น์? ์ต์ ๋ฒ๋ธ๋ก ๋ถํฐ ๋ฐฉ์ถ๋ ๊ฐ๋ค์ ๋ค๋ฅธ ํํ๋ ๋ณํ๋ ๊ฐ์ผ๋ก ๋ณํ๋ฅผ ์ฃผ๊ณ ๋ฐฉ์ถํ๋ ์คํผ๋ ์ดํฐ์ ๋๋ค๐ค๐ป ๊ทธ๋ผ ๋ฐ๋ก ์๋์์ ์ฌ๋ฌ๊ฐ์ง Transforming Operator๋ค์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค๐๐ป toArray ์๋ฐ ํํ๋ฅผ ๋๋๋ค. ์์๋ค์ ํ๋์ ์ด๋ ์ด๋ก ๋ฌถ์ด์ฃผ๋ ์คํผ๋ ์ดํฐ์ธ๊ฒ ๋ฑ ๋ณด์ด์ฃ ? ๊ทธ๋ผ ์ฝ๋๋ก ์ด๋ป๊ฒ ์ฌ์ฉ๋๋์ง ๋ณด๊ฒ ์ต๋๋ค. let disposeBag = DisposeBag() Observable.of(1, 2, 3, 4, 5, 6) .toArray() .su..
-
์ํ๋ฅผ ์ต์ํํ ์๊ณ ๋ฆฌ์ฆAlgorithm 2021. 7. 24. 11:29
์๋ ๋ฌธ์ ๋ ์ฝ๋๋ฆฌํฐ์์ ์ ๊ณตํ๋ MaxCounters์ ๋ฌธ์ ์ ๋๋ค๐ง๐ป๐ป ๋ฌธ์ ์ ์ You are given N counters, initially set to 0, and you have two possible operations on them: increase(X) − counter X is increased by 1, max counter − all counters are set to the maximum value of any counter. A non-empty array A of M integers is given. This array represents consecutive operations: if A[K] = X, such that 1 ≤ X ≤ N, then operation K is..
-
๊ณ ์ฐจํจ์์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐSwift 2020. 12. 18. 12:10
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค! ์ด๋ฒ ํฌ์คํ ์์๋ ๊ณ ์ฐจํจ์์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค. ๊ณ ์ฐจํจ์.. ๋ง๋ง ๋ค์ด๋ ์ด๋ ต์ฃ ? ์ ๋ ์ฒ์ ์ํ์ ๊ดํ๊ฑด๊ฐ? ๋ผ๋ ์๊ฐ์ด ๋ค์์ด์ ^^; ์ ๊ทธ๋ผ ๊ณ ์ฐจํจ์๋ถํฐ ์ฐจ๊ทผ์ฐจ๊ทผ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค! [๊ณ ์ฐจํจ์] ๊ณ ์ฐจํจ์๋ ํ๋ผ๋ฏธํฐ๋ ๋ฐํ๊ฐ์ ํจ์๋ก ์ฃผ๊ณ ๋ฐ๋ ํจ์์ ๋๋ค. ๊ณ ์ฐจํจ์๋ฅผ ํ์ฉํ ๋ํ์ ์ธ ๋ฉ์๋๋ map/filter/reduece๊ฐ ์์ต๋๋ค. ๊ณ ์ฐจํจ์๋ฅผ ์ ์ฌ์ฉํ๋ค๋ฉด ๊ธฐ์กด ๋ฐ๋ณต/์กฐ๊ฑด๋ฌธ๋ค์ ์ฅํฉํ๊ฒ ์ง๋๊ฒ๋ณด๋ค ๋ ํธํ๊ฒ ํจ์ ๋ด์์ ๊ตฌํ์ด ๊ฐ๋ฅํฉ๋๋ค. 1) map: ์ปจํ ์ด๋ ๋ด๋ถ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ๋ณํํ์ฌ ์๋ก์ด ์ปจํ ์ด๋๋ฅผ ์์ฑ data = numbers.map( { (number: Int) -> Int in return number * 2}) //ํ๋ผ๋ฏธํฐ,..