String转byte数组有什么作用?
byte数组是怎么存储String类型数据的?存储之后能正常遍历打印出吗?
------解决方案--------------------String是由final char[]构成的。
byte存储的是char[]
你打印byte的话那就是输出一大串的数字,最大应该是127吧
如果编码格式不变,能转回成String
------解决方案--------------------
所有的对象都是以字节数组存储的,只不过为了让人易于理解,才有了String,int什么的
------解决方案--------------------
"张三".getBytes()得到四个字节的数组,汉字每个占两个字节
------解决方案--------------------
String是由final char[]构成的。
byte存储的是char[]
你打印byte的话那就是输出一大串的数字,最大应该是127吧
如果编码格式不变,能转回成String
那如果我的String是数字,比如“张三”,那他是由哪些char构成的啊?
char[] charArray = "您好".toCharArray();
System.out.println(charArray[0]);
System.out.println(charArray[1]);
看效果。
汉字占几个字节是由编码格式决定的,GBK格式的占三个字节,UTF-8的占2个字节。
------解决方案--------------------可以用在流中传输
------解决方案--------------------比如套接字通信 。
------解决方案--------------------String 还和编码有关系。
------解决方案--------------------我知道web中的乱码问题,有时需要把String转换为数组
------解决方案--------------------网络传输就要转换成byte了