[프로그래머스/JAVA]핸드폰번호가리기

kongta2·2023년 11월 29일

문제 설명

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건

phone_number는 길이 4 이상, 20이하인 문자열입니다.

입출력 예

phone_numberreturn
"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배열을 문자열로 변환해서 반환한다.

profile
2025.04.01~

0개의 댓글