Coding Test/프로그래머스
[프로그래머스 자바 JAVA] 핸드폰 번호 가리기 (level 1)
똧이
2022. 3. 18. 20:07
반응형
https://programmers.co.kr/learn/courses/30/lessons/12948
코딩테스트 연습 - 핸드폰 번호 가리기
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자
programmers.co.kr
문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
제한 조건
- s는 길이 4 이상, 20이하인 문자열입니다.
phone_number | return |
"01033334444" | "*******4444" |
"027778888" | "*****8888" |
풀이1
class Solution {
public String solution(String phone_number) {
String answer = "";
for(int i = 0; i < phone_number.length() - 4; i++){
answer += "*";
// 1. 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린다.
}
answer += phone_number.substring(phone_number.length() - 4);
// 2. 전화번호의 뒷 4자리를 substring로 잘라 answer에 붙인다.
return answer;
}
}
풀이2
import java.util.Arrays;
class Solution {
public String solution(String phone_number) {
char[] ch = phone_number.toCharArray(); // 1. 휴대폰 번호를 잘라 char 배열에 넣는다.
for(int i = 0; i < ch.length - 4; i ++){
ch[i] = '*'; // 2. 뒷자리 4자리를 제외하고 모두 *으로 바꾼다.
}
System.out.println("Arrays.toString(ch) = " + Arrays.toString(ch)); // 3. 뒷자리 4자리를 제외하고 모두 *으로 치환됨
// Arrays.toString(ch) = [*, *, *, *, *, 8, 8, 8, 8]
System.out.println("String.valueOf(ch) = " + String.valueOf(ch)); // 4. 배열이 String 형태로 변환됨.
// String.valueOf(ch) = *****8888
return String.valueOf(ch);
}
}
728x90