상세 컨텐츠

본문 제목

프로그래머스 연습문제 - 핸드폰 번호 가리기(JAVA)

JAVA/프로그래머스 코딩테스트연습

by 중앙박물관장 2021. 8. 26. 16:50

본문

프로그래머스 연습문제 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를 이용하여 처리하였다. 

관련글 더보기

댓글 영역