๐ํธ๋ํฐ ๋ฒํธ ๊ฐ๋ฆฌ๊ธฐ
๐ ๋ฌธ์ ์ค๋ช
ํ๋ก๊ทธ๋๋จธ์ค ๋ชจ๋ฐ์ผ์ ๊ฐ์ธ์ ๋ณด ๋ณดํธ๋ฅผ ์ํด ๊ณ ์ง์๋ฅผ ๋ณด๋ผ ๋ ๊ณ ๊ฐ๋ค์ ์ ํ๋ฒํธ์ ์ผ๋ถ๋ฅผ ๊ฐ๋ฆฝ๋๋ค.
์ ํ๋ฒํธ๊ฐ ๋ฌธ์์ด phone_number๋ก ์ฃผ์ด์ก์ ๋, ์ ํ๋ฒํธ์ ๋ท 4์๋ฆฌ๋ฅผ ์ ์ธํ ๋๋จธ์ง ์ซ์๋ฅผ ์ ๋ถ *์ผ๋ก ๊ฐ๋ฆฐ ๋ฌธ์์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
๐ฅ ์ ํ์ฌํญ
- s๋ ๊ธธ์ด 4 ์ด์, 20 ์ดํ์ธ ๋ฌธ์์ด์ ๋๋ค.
๐ ์ ์ถ๋ ฅ ์
phone_number | return |
"01033334444" | "*******4444" |
"027778888" | "*****8888" |
๐คจ ๊ณ ๋ฏผ
- ๋ฌธ์์ด์์ ํ์ํ ๋งํผ๋ง ํ์ฑํ๋ ๊ธฐ์ .
- ์ ํ์กฐ๊ฑด์ด ์ฃผ์ด์ง ์ด์
๐ป ์ฝ๋ฉ
1์ฐจ ์ ์ถ.
class Solution {
public String solution(String phone_number) {
String answer = "";
// ๋ฒํธ์ ๊ธธ์ด๋ฅผ ๋ฐ์์จ๋ค.
int numLen = phone_number.length();
// ์ ํ ์กฐ๊ฑด
if(numLen >= 4 & numLen <= 20) {
// ๋ท์๋ฆฌ 4์๋ฆฌ ์ ์ธํ๊ณ * ํ์๋ฅผ ๊ธธ์ด์ ๋ง๊ฒ ์ฒ๋ฆฌํ๋ for
for (int i = 0; i < numLen - 4; i++) {
answer += "*";
}
// ๋ต์์ง์ ๋ฒํธ ๋ท 4์๋ฆฌ๋ฅผ ์ถ๊ฐ ์ธํ
ํ๋ค.
answer += phone_number.substring(numLen-4, numLen);
}
return answer;
}
}
๐ ์ฑ์
์ง๋๋ฒ์ ์๊ฐ ํ๋ ํ์ฌ ๋๋ฃ ํ์ด ์์ค ํ๋ฒ ๋ณด๋๋ ๋ฐ์์ +=ํ๋ ์์ค๋ฅผ ๋ณด๊ณ ์๋ StringBuilder๋ก ๋ฐ๊ฟ๋ณด๋ผ๊ณ ์กฐ์ธ์ ํด์ฃผ์๋ค. ๊ทธ๋์ ๋๋ ์? ํ๋ฉด์ ๋ญ ์ฐจ์ด์ง ํ๋ฉฐ ๋น๋๋ก ๋ฐ๊ฟ๋ณด์๋ค.
๐ป 2์ฐจ ์ฝ๋ฉ
class Solution {
public String solution(String phone_number) {
StringBuilder answer = new StringBuilder();
// ๋ฒํธ์ ๊ธธ์ด๋ฅผ ๋ฐ์์จ๋ค.
int numLen = phone_number.length();
// ์ ํ ์กฐ๊ฑด
// if(numLen >= 4 & numLen <= 20) {
// ๋ท์๋ฆฌ 4์๋ฆฌ ์ ์ธํ๊ณ * ํ์๋ฅผ ๊ธธ์ด์ ๋ง๊ฒ ์ฒ๋ฆฌํ๋ for
for (int i = 0; i < numLen - 4; ++i) {
answer.append("*");
}
// ๋ต์์ง์ ๋ฒํธ ๋ท 4์๋ฆฌ๋ฅผ ์ถ๊ฐ ์ธํ
ํ๋ค.
answer.append(phone_number.substring(numLen-4, numLen));
// }
return answer.toString();
}
}
๐ 2์ฐจ ์ฑ์
...? += ๊ณผ append์ ์ฐจ์ด์ ์ด ๋ญ๊ธธ๋ ์ด๋ ๊ฒ ๊น์ง ์ฑ๋ฅ ์ฐจ์ด๊ฐ ๋๋์ง ๋๋ฌด ๊ถ๊ธํด์ ๊ฒ์ํ์ฌ ๊ณต๋ถ๋ฅผ ํ๋ค.
๐คจ ํจ์จ์ฑ ๋น๊ต
๊ฒฐ๋ก ์ ์ผ๋ก ๋งํ์๋ฉด +=๊ฐ 2๋ฒ ์ด์ ์ฌ์ฉ๋ ๊ฒฝ์ฐ์๋ builder์ append ์ฑ๋ฅ์ด ๋ฐ์ด๋ ๊ฒ ๊ฐ๋ค.
String : (+=) str = str + "1"์ str + "1" ์ ์๋ก์ด ๋ฌธ์์ด๋ก ๋ฉ๋ชจ๋ฆฌ์ ํ ๋นํ๊ณ ๊ทธ ์์น๋ฅผ ์ฐธ์กฐํ๋๋ก ์ฐ์ฐํ๋ค.
StringBuilder : (append) sb.append("1") ์ ๊ฒฝ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ๊ทธ๋๋ก append๊ฐ ๊ฐ๋ฅ.
์ถ์ฒ : ifuwanna.tistory.com/221
โฑ ์์์๊ฐ ๋ฐ ํ๊ธฐ
์ฝ ๋ฌธ์ ํด๊ฒฐ์ 5๋ถ์ ๊ฐ๋ฅํ์ง๋ง ํจ์จ์ฑ๊น์ง ๋ฐ์ง๋ฉฐ ์ฝ๋ฉ์ ํ๋ 1์๊ฐ ์ ๋ ์๋ชจํ ๊ฒ ๊ฐ๋ค.
์๋ฆฟ์ ์ฒดํฌ ํ๋ ๊ฒ๊ณผ String, StringBuilder์ ์ฐจ์ด์ ๊ณผ ์ฑ๋ฅ ์ฐจ์ด๋ฅผ ์ ์ ์์๊ณ ,
String ๊ด๋ จ ๋ฌธ์ ํด๊ฒฐ ํ๋๋ฐ์ ์์ด์ ์ด๋ ํ ๋ฐ์ดํฐ ํ์ ์ ์ ํํด์ผ ํ ์ง ์ ์ ์๋ ๋ฌธ์ ๊ฐ ๋์๋ค.