📘문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
https://school.programmers.co.kr/learn/courses/30/lessons/12948
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
📌 제한조건
- phone_number는 길이 4 이상, 20이하인 문자열입니다.
💡 개념 설명
- 전화번호 전체 길이를 구합니다.
- 마지막 4자리를 제외한 나머지 길이만큼 *를 붙입니다.
- 마지막 4자리는 그대로 붙입니다.
- 두 문자열을 합쳐 리턴합니다.
📎 입출력 예시

📎 코드
class Solution {
public String solution(String phone_number) {
String answer = ""; // 결과를 저장할 빈 문자열
int length = phone_number.length(); // 글자 전체 개수 (예: 11)
int starCount = length - 4; // * 표시할 개수
// * 표시를 starCount만큼 붙이기
for (int i = 0; i < starCount; i++) {
answer += "*";
}
// 뒷 4자리 잘라서 붙이기 (substring으로)
answer += phone_number.substring(length - 4); // 예: 11 - 4 = 7 → substring(7)
return answer;
}
public static void main(String[] args) {
Solution sol = new Solution();
// 예시 실행
System.out.println(sol.solution("01033334444")); // *******4444
System.out.println(sol.solution("027778888")); // *****8888
}
}
📎 결과

'Java' 카테고리의 다른 글
| [Java] 코딩 19 - 프로그래머스 기출 문제(JAVA) / 제일 작은 수 제거하기 / Day 18 (4) | 2025.07.29 |
|---|---|
| [Java] 코딩 18 - 프로그래머스 기출 문제(JAVA) / 없는 숫자 더하기 / Day 17 (1) | 2025.07.25 |
| [Java] 코딩 16 - 프로그래머스 기출 문제(JAVA) / 음양 더하기 / Day 15 (1) | 2025.07.16 |
| [Java] 코딩 15 - 프로그래머스 기출 문제(JAVA) / 나누어 떨어지는 숫자 배열 / Day 14 (1) | 2025.07.15 |
| [Java] 코딩 14 - 프로그래머스 기출 문제(JAVA) / 서울에서 김서방 찾기 / Day 13 (3) | 2025.07.14 |