프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
phone_number는 길이 4 이상, 20이하인 문자열입니다.
| phone_number | return |
|---|---|
| "01033334444" | "***4444" |
| "027778888" | "*8888" |
[1]
class Solution {
public String solution(String phone_number) {
String answer = "";
for(int i = 0 ; i < phone_number.length() - 4; i++) {
answer += "*";
}
answer += phone_number.substring(phone_number.length() - 4);
return answer;
}
}
맨 뒷자리 4자리를 제외한 문자열을 answer에 "*"로 입력하고, substring을 이용하여 나머지 뒤 4자리를 phone_number의 마지막 4자리로 채워준다.
[2] 다른사람 풀이
class Solution {
public String solution(String phone_number) {
char[] ch = phone_number.toCharArray();
for(int i = 0; i < ch.length - 4; i ++){
ch[i] = '*';
}
return String.valueOf(ch);
}
}
toCharArray를 이용해 phone_number 문자열을 char배열로 만들고, 배열 인덱스를 이용해 마지막 4자리를 제외한 문자를 '*'로 바꿔주고, String.valueOf(배열)을 이용해서 char배열을 문자열로 변환해서 반환한다.