인프런 커뮤니티 질문&답변

jkdev1324님의 프로필 이미지

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

9. 숫자만 추출

parseInt가 0을 제외하는 이유

작성

·

972

0

안녕하세요 선생님,
 
강의 잘 듣고 있습니다. 이번 강의는 풀이가 여러개여서 다양한 접근을 할 수 있어 좋네요.
 
parseInt는 String을 숫자로 변환해주는 것으로 알고 있습니다.
 
9. 숫자만 추출에서 parseInt()시 첫 글자 0이 제외되는데요. 어떻게 가능한 것인가요?int (정수)는 0을 포함하기에 어떻게 0이 제외되는건지 헷갈려서요.
 
답변 미리 감사드립니다.

답변 1

6

만약 "023" 이라는 문자를

Integer.parseInt("023") 에 넣게되면 

내부 구현에서는 0, 2, 3 이렇게 문자열을 char 단위로 순회하면서 * 10을 해주어 자릿수를 올리면서

값들을 모두 합쳐서 숫자 23을 만들게 됩니다.

 

예시로 보여드리면

result = 0, 
1) '0' -> result = (result * 10) + 0     # result =  0

2) '2' -> result = (result * 10) + 2.    # result = 2

3) '3' -> result = (result * 10) + 3.    # result = 23

 

위와 같습니다.