?? copyobjectarray.java
字號:
/*利用System.arraycopy對對象數組進行復制
并證明對象數組的復制是一種引用,他們指
向相同的內存空間,因此有任何一個改變,
另一個都會改變*/
class copyOBJECTarray
{
public static void main(String args[])
{
Point[] points1 = new Point[]{new Point(1,1),new Point(2,2),new Point(3,3)};
Point[] points2 = new Point[3];
System.arraycopy(points1,0,points2,0,points1.length);//arraycopy函數(源數組,源起始位置,目的數組,目的起始位置,拷貝長度)
//注意數組越界問題
for(int i = 0;i < points2.length;i++)
{
System.out.println("x="+points2[i].x+" "+"y="+points2[i].y);
}
points2[1].x=100; //證明對象數組的復制是一種引用,他們指
points2[1].y=100; //向相同的內存空間,因此有任何一個改變,
//另一個都會改變
System.out.println("當points2[1].x和points2[1].y都改為100時,");
System.out.println("points1[1].x="+points1[1].x+" "+"points1[1].y="+points1[1].y);
points1[1].x=67;
System.out.println("當此時points1[1].x在改為67時points2[1].x="+points2[1].x);
}
}
class Point
{
int x,y;
Point(int x,int y)
{
this.x=x;
this.y=y;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -