아스키 코드에서 각 문자에는 고유한 숫자 값이 할당되어 있다. 문자 '0'부터 '9'까지는 연속된 값으로 할당되며, 그 값은 다음과 같다.
- '0'의 아스키 코드 값: 48
- '1'의 아스키 코드 값: 49
- ...
- '9'의 아스키 코드 값: 57
이 연속적인 값의 특징을 활용하면, 문자와 숫자 간의 변환을 손쉽게 수행할 수 있다.
예제: '1' → 숫자 1로 변환
- '1'의 아스키 코드 값은 49 이다.
- '0'의 아스키 코드 값은 48 이다.
- '1' - '0'를 계산하면, 49 - 48 = 1이 된다.
결과적으로, 문자 '1'에서 '0'을 빼면 해당 문자를 숫자로 변환할 수 있다.
일반화된 규칙
문자 '0'부터 '9'까지의 숫자로 변환하려면
int 숫자 = 문자 - '0';
이 방법은 모든 숫자 문자를 정수 값으로 변환할 때 유효하다.
예제 코드
char ch = '7';
int num = ch - '0';
System.out.println(num); // 출력: 7
원리 요약
- 아스키 코드는 문자 '0'부터 '9'까지 순서대로 값이 증가한다.
- '0'의 아스키 코드 값을 기준으로 빼주면 문자와 숫자의 관계를 쉽게 변환할 수 있다.
'코딩테스트 > 이론' 카테고리의 다른 글
[JAVA] Scanner와 BufferedReader (1) | 2024.11.29 |
---|---|
[JAVA] 출력문 println, print, printf 어떤 차이가 있을까? (0) | 2024.11.29 |
[JAVA] 정수와 문자열 입력값의 각 자리수 합 구하기 (0) | 2024.11.28 |
[코딩테스트] 문자열 활용 - 문자열 뒤집기(특정단어) with Java (0) | 2024.08.30 |
[코딩테스트] 문자열 활용 - 문자찾기와 바꾸기 with Java (0) | 2024.08.30 |