从char转换为byte

时间:2015-06-25 14:16:59

标签: java char byte

如何在java中将字符转换为字节? 如果我写

char c=12;
byte b=(byte)c;
System.out.println(b);

然后结果是12,正如预期的那样 但... 如果,我写了

char c='\u0012';
byte b=(byte)c;
System.out.println(b);

然后结果是18。 如何???

2 个答案:

答案 0 :(得分:6)

\u0012实际上是十六进制格式,因此其值为18。对于12,您必须使用\u000c

示例 -

char c='\u000c';
byte b=(byte)c;
System.out.println(b);
>> 12

答案 1 :(得分:5)

因为' \ u0012'十进制18是十六进制的。