Skip to main content

String, char > int 변환


1. int → String 변환



✅ 방법 1. String.valueOf(int)

가장 범용적으로 쓰이고, null 처리가 가능하다.

int num = 3;
String str = String.valueOf(num);
System.out.println(str);  // 출력: "3"


✅ 방법 2. Integer.toString(int)

오직 int → String 변환에만 사용된다.

int num = 3;
String str = Integer.toString(num);
System.out.println(str);  // 출력: "3"


✅ 방법 3. 문자열 더하기 (+ 연산자)

가장 짧고 직관적이지만 권장 방식은 아니다.

int num = 3;
String str = num + "";  // 문자열과 더하면 문자열로 변환됨
System.out.println(str);  // 출력: "3"


2. char → int 변환

자바에서 '3' 같은 문자(char) 를 정수(int) 로 바꾸는 방법이다.


✅ 방법 1. '0'을 빼기 (가장 일반적이고 직관적)
char ch = '3';
int num = ch - '0';  // 결과: 3

📌 왜 이렇게 될까?

  • 문자 '3'의 아스키 코드: 51
  • 문자 '0'의 아스키 코드: 48
  • 51 - 48 = 3


✅ 방법 2. Character.getNumericValue()
char ch = '3';
int num = Character.getNumericValue(ch);  // 결과: 3

이 방식은 'A' → 10, 'B' → 11 같은 16진 문자도 지원한다.

단, '0'~'9'만 처리할 거라면 첫 번째 방법이 더 간단하고 빠르다.


✅ 방법 3. String으로 바꿔서 Integer.parseInt()

문자열로 바꿔서 정수화하는 방법인데 이건 다소 무거운 방법이고 잘 쓰지 않는다.

char ch = '3';
int num = Integer.parseInt(String.valueOf(ch));  // 결과: 3