获得徽章 0
赞了这篇文章
赞了这篇文章
赞了这篇文章
大佬们,阅读String源码时发现构造方法参数的值与我传入的不同。求解答。感谢!!!new String()时 的值。输出String结果为“ab李”
[code=java] byte[] temp = {97, 98, -26,-99, -114};
String a = null;
try {
a = new String(temp,0,5,"UTF8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
System.out.println(a);[/code]
打断点时发现String的参数[code=java]public String(byte bytes[], int offset, int length, String charsetName)[/code]变为offest=18,length=3.bytes={77,97,110,105,102,101,115,116,45,86,101,114,115,105,111,110,58,32,49,46,48,13,10,0,0.......}(后面都是0,长度为512)。
[code=java] byte[] temp = {97, 98, -26,-99, -114};
String a = null;
try {
a = new String(temp,0,5,"UTF8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
System.out.println(a);[/code]
打断点时发现String的参数[code=java]public String(byte bytes[], int offset, int length, String charsetName)[/code]变为offest=18,length=3.bytes={77,97,110,105,102,101,115,116,45,86,101,114,115,105,111,110,58,32,49,46,48,13,10,0,0.......}(后面都是0,长度为512)。
展开
评论
点赞
Nginx
JavaScript
CSS
Vue.js
Node.js