개발하는 체대생

[코딩테스트] 프로그래머스/Java(자바) 핸드폰 번호 가리기 본문

코딩테스트/JAVA

[코딩테스트] 프로그래머스/Java(자바) 핸드폰 번호 가리기

개발하는체대생

[문제]

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

 

[제한 조건]

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

 

[풀이]

  
        //1-1. 문자열 변수값에서 뒤에 4자리 번호르 뺀 값을 구해준다.
        //1-2. 구해놓은 변수값 만큼 *를 반복해준다.
        //2. 뒤에 4자리를 subString으로 자르고 변수값에 넣어둔다.
        //3. 구해놓은 *값과 뒤번호4자리 값을 더하고 정답 변수에 넣어준다.

나의 답안

class Solution {
    public String solution(String phone_number) {
        String answer = "";
        
    	int last_phone_num4 = phone_number.length() - 4;    //1-1. 문자열 변수값에서 뒤에 4자리 번호를 뺀 값을 구해준다.
    	String star = "*";								    //1-2. 구해놓은 변수값 만큼 *를 반복해준다.
        star = star.repeat(last_phone_num4);	        	//2. 뒤에 4자리를 subString으로 자르고 변수값에 넣어둔다.
        phone_number = phone_number.substring(last_phone_num4 ,phone_number.length());
        //2-1.phone_number를 substring 메서드를 사용해서 핸드폰 뒤 4자리를 구한다. 
        answer = star+phone_number;      //3. 구해놓은 *값과 뒤번호4자리 값을 더하고 정답 변수에 넣어준다.
        return answer;
    }
}

 

회고

- 문자열을 자르는 함수 : .substring(시작 위치 ,끝나는 위치)

- 문자열을 반복하는 함수 : .repeat(반복횟수)

 

Comments