public class Copy{
public static void main(String[] args){
int ary1[]=new int[]{1,2,3,5};
int ary2[]=new int[4];
System.out.println ("交换前:");
for(int i=0;i<ary1.length;i++){
System.out.print (ary[i]);
}
System.out.println ();
System.out.println ("交换后:");
ary2[]=getCopy(ary1[]);
for(int i=0;i<ary2.length;i++){
System.out.print (ary2[i]);
}
System.out.println ();
}
//
static int[] getCopy(int x[]){
int[] y =new int[4];
for(int i=0;i<y.length;i++){
y[i]=x[i];
}
return y;
}
//
}
第二个数组是空的,怎么能for循环呢,应该会抛空指针异常吧
首先,你这段代码根本就编译不了啊 。其次,参数传递只是传递参数名称,不能把[]也写上,是语法错误的。
修正如下试试:
public class Copy {
public static void main(String[] args) {
int ary1[] = new int[] { 1, 2, 3, 5 };
int ary2[] = new int[4];
System.out.println("交换前:");
for (int i = 0; i < ary1.length; i++) {
System.out.print(ary1[i]);
}
System.out.println();
System.out.println("交换后:");
ary2 = getCopy(ary1);
for (int i = 0; i < ary2.length; i++) {
System.out.print(ary2[i]);
}
System.out.println();
}
static int[] getCopy(int x[]) {
int[] y = new int[4];
for (int i = 0; i < y.length; i++) {
y[i] = x[i];
}
return y;
}
}
ary2[]=getCopy(ary1[]);这句有问题应改为:ary2[]=getCopy(ary1);