프로그래머스 연습문제 Level 1 JAVA 문제인 핸드폰 번호 가리기를 소개하고
같이 해결해보자
##문제설명
전화번호가 주어졌을 때, 전화번호 뒷자리 4개를 제외한 모든 수를 *로 바꿔주는 알고리즘을 요구한다.
ex) 01012345678 -> *******5678 로 변환
제한조건의 s는 길이 4이상 20이하인 문자열이라 되어있는데,
아마 s는 phone_number를 의미하는 것 같다. 크게 신경 안써도 되는 제한조건인 것 같다.
##초기코드
String 형 phone_number에 변환되어질 번호가 저장되어 매개변수로 전달되면
뒷자리 4자리만 남기고 *처리하여 answer 변수에 저장하여 return 한다.
##알고리즘
3번 line 에서 len 변수에 phone_number의 길이를 우선 저장하고,
6번 line 에서 toCharArray() 메소드를 이용하여 char[] 배열로 number변수에 한자리씩 저장한다.
(toCharArray() 메소드에 설명은 https://centralmuseum.tistory.com/entry/String-to-char-char-to-String-%ED%98%95-%EB%B3%80%ED%99%98-%EB%A9%94%EC%86%8C%EB%93%9C-toCharArray 참고)
for문을 이용해 뒤에 4자리 전까지 반복하여 *로 바꿔준다.
변환된 number 변수는 char[] 형이기 때문에 10번 라인을 통해 String 형으로 변환(이부분도 설명은 위에 링크)해주어 changeNumber 변수에 저장하여 answer에 전달하고 return 해주면 완성된다.
이번 문제는 String Class에 Constructor와 Method를 이용하여 처리하였다.
프로그래머스 - 위클리 첼린지 6주차 복서 정렬하기 (0) | 2021.09.07 |
---|---|
프로그래머스- 위클리챌린지 5주차 모음사전 (1) | 2021.09.01 |
프로그래머스 연습문제 - 행렬의 덧셈(JAVA) (0) | 2021.08.26 |
프로그래머스 연습문제 - x만큼 간격이 있는 n개의 숫자 (JAVA) (0) | 2021.08.25 |
프로그래머스 연습문제 - 직사각형 별찍기(JAVA) (0) | 2021.08.24 |
댓글 영역