char a = '我';
System.out.println((int)a);
输出为25105
这个值是什么编码的?
**1.Java中一个中文汉字,是两个字节。
2.Java中有一个原则,不管在编译前java文件使用何种编码,在编译后成class后,他们都是一样的:使用Unicode编码表示。**
Java
中字符使用的是Unicode
的UTF-16
编码。并不是一个字符对应Integer
,Java
中的Character
占用2 Byte
,即16 bit
,而Integer
占用的是4 Byte
,即32 bit
,所以Integer
能表示所有的Character
,但并不是所有的Integer
都能找到对应的Character
。
4 回答1.8k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
4 回答2.4k 阅读
2 回答847 阅读✓ 已解决
2 回答1.4k 阅读
在 JVM 里面 char 是用整型来表示的,编码是unicode