본문 바로가기

코딩테스트 연습(with java)/프로그래머스

프로그래머스 연습문제<핸드폰 번호 가리기>-5.11일 수정

문제설명 

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

 

phone_number                                                                return

"01033334444" "*******4444"
"027778888" "*****8888"

내가 작성한 코드 

 

class Solution {
    public String solution(String phone_number) {
        String answer = "";
        String star = "";
        int f = 0; 
        char[] arr = new char[4];
        
        for(int i = phone_number.length()-4; i<phone_number.length(); i++){
    
            arr[f] = phone_number.charAt(i);
            f++;
        }
        
        for(int k=0; k<phone_number.length()-4; k++){
            star = star+"*";
        }
        
        String str = String.valueOf(arr);
        
        answer = star + str;
        
        
        
        return answer;
    }
}

char배열을 생성하고 

for문을 통해 뒤 4개의 수가 배열에 들어가도록 하였다 

그 뒤, 전체 숫자에서 4개의 숫자를 제외한 나머지는 모두 별을 출력하도록 for문을 작성하였다 

이 배열값을 String값으로 변환하여 답을 return하였다