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

关于打印出现随机数字的问题
Point[]   pts1=new   Point[]{new   Point(1,1),new   Point(2,2),new   Point(3,3)};
Point[]   pts2=new   Point[3];
System.arraycopy(pts1,0,pts2,0,pts1.length);
for(int   i=0;i <pts2.length;i++)
{
                                                System.out.println(pts2[i]);
System.out.println( "x= "+pts2[i].x+ ", "+ "y= "+pts2[i].y);
}

为什么出现了
Point@11a698a
Point@107077e
Point@7ced01
而只有下面的System.out.println( "x= "+pts2[i].x+ ", "+ "y= "+pts2[i].y);结果才是想要的:
x=1,y=1
x=2,y=2
x=3,y=3

------解决方案--------------------
你打印的是数不清组的地址.

你看看你的数组是什么类型的.
------解决方案--------------------
override Point类的toString方法
public String toString(){
return "x= "+x+ ",y= "+y;
}