๋ฌธ์
์์
ํ์ด
- ๋จผ์ , ์ฒซ ๋ฒ์งธ ๋ฌธ์์ด์ ์ ์ธํ๊ณ ๋ค๋ฅธ ๋ฌธ์์ด์ ์๋ฌธ์๋ก ๋ณ๊ฒฝ๋์ด์ผ ํ๋ฏ๋ก ์ ์ฒด ๋ฌธ์์ด์ ์๋ฌธ์ํ ์ํต๋๋ค.(toLowerCase)
- ์ดํ " " delimeter ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋ถ๋ฆฌํ ๋ค ์ฒซ ๋ฒ์งธ ๋ฌธ์์ด์ ๋๋ฌธ์ํ ์ํค๋ฉด ๋ฉ๋๋ค(toUpperCase). ํ์ง๋ง delimeter๊ฐ ์ฐ์์ ์ผ๋ก ๋ค์ด๊ฐ ์ ์๊ณ ์ฐ์์ ์ผ ๊ฒฝ์ฐ ๋น๋ฌธ์์ด์ด split ๋ฆฌ์คํธ๋ก ์ถ๊ฐ๊ฐ ๋ฉ๋๋ค. ์ด๋ด ๋ first๋ฅผ ํธ์ถํ ๋ ๋ฐํ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ฏ๋ก firstOrNull ํจ์๋ฅผ ํตํด์ Null Check ํ ๋๋ฌธ์ํ ์ํค๋๋ก ํ์๋ฉด ๋ฉ๋๋ค.
class Solution {
fun solution(s: String): String {
return s.toLowerCase().split(" ").map{
it.firstOrNull()?.let{ first ->
it.replaceFirst(first, first.toUpperCase())
} ?: it
}.joinToString(" ")
}
}
์ฐธ๊ณ