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

스브코·2021년 11월 12일
0

문제 출처: https://programmers.co.kr/learn/courses/30/lessons/12948

문제 설명

전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건

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

phone_number(input)

"01033334444"

return

"***4444"

문제 풀이

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

최대한 컴팩트하게 썻다...

다른 풀이

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() 함수를 써본적이 없어서 이렇게 쓰는구나하고 신기해서 함께 포스팅했다.

profile
익히는 속도가 까먹는 속도를 추월하는 그날까지...

0개의 댓글