为什么"你"这个字符串的byte[]是-60 -29
public class Test1 {
/**
* @param args
*/
public static void main(String[] args) {
byte a[] = "你".getBytes();
StringBuffer buff = new StringBuffer();
for (int i = 0; i < a.length; i++) {
buff.append(a[i] + " ");
}
System.out.println("数组内容");
System.out.println(buff.toString());
}
}
运行结果为:
数组内容
-60 -29
为什么"你"这个字符串的byte[]是-60 -29
?
麻烦给出详细解释。
等待回答。
------解决方案--------------------使用系统默认的字符编码,对“你”进行了编码。
getBytes()的源码:
Java code
public byte[] getBytes() {
return StringCoding.encode(value, offset, count);
}
------解决方案--------------------
------解决方案--------------------
如果楼主看了1-5楼的回答还不明白,那么就需要恶补基础了喵~~``
------解决方案--------------------
他们之间的对应关系你需要去专门的unicode码表网站查一下。这个码表非常宏大,而且目前还是继续扩充之中。
------解决方案--------------------
字符嘛~
------解决方案--------------------