只有一个注意事项,java的引用传递是传值的。所以A=C是错的必须使用for循环,依次修改数组对象A中的值,此时才能真正改变实参A public void merge(int A[], int m, int B[], int n) { int[] C=new int[m+n]; int i,j,k; i=j=k=0; while(i<m && j<n){ if(A[i]<B[j]){ C[k++]=A[i++]; }else{ C[k++]=B[j++]; } } while(i<m){ C[k++]=A[i++]; } while(j<n){ ...