日期:2014-05-20  浏览次数:20664 次

关于byte数组

public class Test {

/**
 * @param args
 */
public static void main(String[] args) {
// TODO 自动生成方法存根

String str="123456789";
byte[]bt=new byte[4];
System.out.println(bt.length);
bt=str.getBytes();
System.out.println(bt.length);

}

}


打印的结果是4,9.。为什么,求解。
数组,byte BT?

------解决方案--------------------
bt是一个数组引用,初始化为4的长度,这第一问就显然了。
str.getBytes()会返回一个byte[]对象,然后这个对象赋值给了bt这个引用,此时bt.length是另外一个byte[]对象的长度了。