컴퓨터는 0과 1 숫자 밖에 모르기 때문에 문자도 숫자로 기억한다.
인코딩 방식에 따라 어떤 숫자와 어떤 문자를 대응시키는가가 다르다.
통상적으로 아스키 코드 방식을 많이 사용한다.
// 알파벳
대문자 'A': 65 ~ 'Z': 90, 소문자 'a': 97 ~ 'z': 122
대소문자 차이는 32 -> 소문자 - 32 = 대문자
// 숫자
'0' : 48 ~ '9': 57
// int 와 char 연산할 때는 char는 숫자(아스키 번호)로 연산함
public int solution(String str){
int answer = 0;
for(char x : str.toCharArray()){
if( x >= '0' && x <= '9') answer = answer * 10 + (x-'0');
// if( x >= 48 && x <= 57) answer = answer * 10 + (x-48); 두개 동일
}
return answer;
}
source
https://m.blog.naver.com/kimkwon429/220723064434
'Language' 카테고리의 다른 글
[Language] SOLID (0) | 2023.03.13 |
---|---|
[Language] 절차지향과 객체지향 (0) | 2023.03.13 |