char[]和byte[]怎么相互转化呢?

kofight 2002-12-03 02:47:51
char[]和byte[]怎么相互转化呢?
...全文
748 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
alphazhao 2002-12-03
  • 打赏
  • 举报
回复
忘了将byte[]转为char[]的了
综合如下:
public class Test{
public static void main(String[] args) {
try {
//从char[]到byte[]
char[] ch = {'中','a'};
String str = String.valueOf(ch,0,ch.length);
byte[] alpha = str.getBytes();
System.out.println(str);
System.out.println(alpha.length);

//从byte[]到char[]
String str2 = new String(alpha);
char[] ch2 = new char[str2.length()];
System.out.println(str2);
for(int i=0;i<str2.length();i++) {
ch2[i] = str2.charAt(i);
System.out.println(ch2[i]);
}
}
catch(Exception es) {
es.printStackTrace();
}
}
}
alphazhao 2002-12-03
  • 打赏
  • 举报
回复
char中存若为中文,是2个字节,若为字母等,又是1个字节,byte是1个字节的,也就是说,直接将char[] 转换为 byte[],在byte的长度定义上肯定是会有问题的。
所以,我们可以通过String对象中转转换,比如如下:
char[] ch = {'中','a'};
String str = String.valueOf(ch,0,ch.length);
byte[] alpha = str.getBytes();
System.out.println(str);
System.out.println(alpha.length);
wdllove 2002-12-03
  • 打赏
  • 举报
回复
你查一下有的是

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧