关于String一个非常非常奇怪的问题~~~~·
首先New了一个String类型的数组
String basicprice = new String[3];
然后在setprice()中给它赋值,同时调用paint()函数
//获取当天的涨跌停价格
public void setprice(String[] temp) {
System.arraycopy(temp,0,basicprice,0,3);
System.out.println(basicprice.toString());//这里输出:[Ljava.lang.String;@1687e7c
System.out.println(basicprice[0]);//这里输出:21.65
repaint();
}
在paint()中,我调用basicprice数组
public void pain(){
System.out.println("I'm here---"+basicprice.toString());//这里输出:I'm here---[Ljava.lang.String;@76e8a7
System.out.println("inside of paint---"+basicprice[0]);//这里输出:inside of paint---null
同一个数组,在两个函数中的数据竟然是不一样的
显然,看起来他们的reference是不一样的,但是
我绝对只定义了一个这样的数组,绝对只单纯的在这两个函数中使用,一个赋值,一个使用
却出现了这样的现象····哪位高手解答·····困惑我好几个小时了···
多谢指点
}
非常奇怪的发现