이지스 퍼블리싱에서 출판된 Do it 알고리즘 자바코딩테스트 책을 공부하며 알게된 String.toCharArray() 내용을 정리한다.
String name = "Hwajoon";
char[] nameToChar = name.toCharArray();
위 처럼 name.toCharArray() 메소드를 이용하면 name 의 값을 한글자씩 떼서 nametoChar라는 char 형식 배열에 저장할 수 있다.
이러한 기능을 통해 String 으로 입력된 연속된 숫자의 합(sum)을 구할 수 있다.
String num = "1234";
char[] numToChar = num.toCharArray();
int sum = 0;
for (int i = 0; i < numToChar.length; i++) {
sum += numToChar[i] - '0'; // char - '0' 을 통해 char 형 변수를 int 형 변수로 형변환이 가능.
}
return sum;
char - '0' 을 하는 이유 : char 형 데이터를 그대로 int 에 담을 경우 이진수 형태로 저장됨. (ex : 1 은 아스키코드로 49, 0은 48).
그래서 아스키 코드 48을 빼준 값으로 사용하는 것으로 이해했다.