为什么"你"这个字符串的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()的源码:
public byte[] getBytes() { return StringCoding.encode(value, offset, count); }
[解决办法]