Convert int to char in java

char, int, java

Solution

int a = 1;
char b = (char) a;
System.out.println(b);

will print out the char with Unicode code point 1 (start-of-heading char, which isn't printable; see this table: C0 Controls and Basic Latin, same as ASCII)

int a = '1';
char b = (char) a;
System.out.println(b);

will print out the char with Unicode code point 49 (one corresponding to '1')

If you want to convert a digit (0-9), you can add 48 to it and cast, or something like `Character.forDigit(a, 10);`.

If you want to convert an `int` seen as a Unicode code point, you can use `Character.toChars(48)` for example.

Problem

Below is a code snippet, ``` int a = 1; char b = (char) a; System.out.println(b); ``` But what I get is empty output. ``` int a = '1'; char b = (char) a; System.out.println(b); ``` I will get 1 as my output. Can somebody explain this? And if I want to convert an int to a char as in the first snippet, what should I do?

Original source