[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day61 ๋ฐฐ์ด์์ ๋ฌธ์์ด ๋์๋ฌธ์ ๋ณํํ๊ธฐ
๐ ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/181875
import Foundation
func solution(_ strArr:[String]) -> [String] {
//์ธ๋ฑ์ค๊ฐ ์ง์์ด๋ฉด ์๋ฌธ์
//์ธ๋ฑ์ค๊ฐ ํ์์ด๋ฉด ๋๋ฌธ์
var result:[String] = []
for i in (0...strArr.count - 1) {
if i % 2 == 0 {
result.append(strArr[i].lowercased())
} else {
result.append(strArr[i].uppercased())
}
}
return result
}
func solution(_ strArr: [String]) -> [String] {
strArr.indices.map { ($0 % 2 == 0) ? strArr[$0].lowercased() : strArr[$0].uppercased()}
}
๊ณ ์ฐธํจ์๋ฅผ ์ฌ์ฉํด๋ณด๊ณ ์ ๋ ธ๋ ฅ ์ค์ด๋ ์์ง map์์ ์กฐ๊ฑด์์ ์ฌ์ฉํ๋๊ฒ ์ฝ์ง๊ฐ ์๋ค.
Swift์ Collection ํ๋กํ ์ฝ์์ ์ ๊ณตํ๋ ์์ฑ์ผ๋ก, ์ปฌ๋ ์ ์ ๋ชจ๋ ์ ํจํ ์ธ๋ฑ์ค๋ฅผ ๋ํ๋ด๋ ์ํ์ค์ด๋ค.
์ปฌ๋ ์ ์ด ๊ฐ์ง๊ณ ์๋ ๋ชจ๋ ์์์ ์ ๊ทผํ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์๋ ์ธ๋ฑ์ค๋ค์ ๋ฒ์๋ฅผ ์ ๊ณตํ๋ค.
๋ฐฐ์ด์ ๊ฒฝ์ฐ, indices๋ 0์์ ๋ฐฐ์ด์ ๋ง์ง๋ง ์ธ๋ฑ์ค๊น์ง์ ๋ฒ์๋ฅผ ํฌํจํ๋ค.
์๋ฅผ ๋ค์ด, ๋ฐฐ์ด์ ๊ธธ์ด๊ฐ 5๋ผ๋ฉด, indices๋ [0, 1, 2, 3, 4]์ ๊ฐ์ ๋ฒ์๋ฅผ ๋ํ๋ ๋๋ค.
let numbers = [1, 2, 3, 4]
let doubled = numbers.indices.map { index in numbers[index] * 2 }
print(doubled) // [2, 4, 6, 8]