[swexpert] 2050. 알파벳을 숫자로 (java)

728x90
반응형

풀이 

 

자바는 문자열의 문자 접근을 charAt을 이용해서 한다. 

명시적 형변환 한 다음, 64를 빼서 ('A' 는 65이다) 1부터 나오도록 구현한다 

 

문자를 숫자로 변환하는 방법은 앞에 (int)를 붙여주고 숫자를 문자로 바꿔줄 때는 (char)을 붙여준다

 

** 추가 

'0' 은 48이다. 이를 간과해서 'A'+'0'는 숫자가 된다고 생각했는데 113이 되어서 당황했었다. (65+48===113이 된 것)

'A'-0 으로 해주면 그제서야 제대로 숫자로 형변환된다 

 

즉, (int)s.charAt(i)로 해줘도 되지만 s.charAt(i)-0 이렇게 해줘도 된다. 

 

import java.util.Scanner;

public class Solution {

	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		String s=sc.next();
		for (int i = 0; i < s.length(); i++) {
			System.out.print(((int)s.charAt(i)-64)+" ");
		}
		sc.close();
	}
	
	
}
	
728x90
반응형
TAGS.

Comments