본문 바로가기

Java/Java 알고리즘 프로그래머스

[프로그래머스-LEVEL 1] 4. 핸드폰 번호 가리기

반응형
  • 핸드폰 번호 가리기
문제 설명

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

제한 조건
  • phone_number는 길이 4 이상, 20이하인 문자열입니다.
입출력 예
phone_number return
"01033334444" "*******4444"
"027778888" "*****8888"

 


 

class Solution {
    public String solution(String phone_number) {
        String answer = "";
        StringBuilder sb = new StringBuilder();
        sb=sb.append(phone_number);
        int n=phone_number.length();
        
        for(int i=0;i<n-4;i++){
            sb=sb.replace(i,sb.length()-4,"*");
        }
        answer=sb.toString();
        
        
        return answer;
    }
}

 

+)세련된 풀이

class Solution {
    public String solution(String phone_number) {
        String answer = "";
        char[] arr = phone_number.toCharArray();
        //String을 char[]로 : toCharArray()
        int n=phone_number.length();
        for(int i=0;i<n-4;i++){
            arr[i]='*';
            //뒤에서 4자리전까지 *으로 설정
        }
        
        answer=String.valueOf(arr);
        //char[]를 String으로 : valueOf
        
        return answer;
    }
}

 

 


#String 관련 메소드

StringBuilder

append

toString

replace

toCharArray

String.valueOf

substring

charAt(i)

setCharAt(i,'*')

split

반응형