public class java_23 {
public static void main(String[] args) {
int[] arr1 = {1,2,5};
int[] arr2 = {3,4,6};
// 获取两个数组的长度
int alen = arr1.length;
int blen = arr2.length;
int sum = alen+blen;
int[] newarr = new int[sum];
// 利用arrayCopy实现数组间的复制
// 从arr1数组的0位置开始复制到新数组中,起始位置也是0 ,拷贝长度是arr1的长度
System.arraycopy(arr1,0,newarr,0,alen);
// 从arr1数组的0位置开始复制到新数组中,起始位置是arr1的长度 ,拷贝长度是arr2的长度
System.arraycopy(arr2,0,newarr,alen,blen);
System.out.println(Arrays.toString(newarr));
}
}
import java.util.Arrays;
public class java_23 {
public static void main(String[] args) {
int[] arr1 = {1,2,5};
int[] arr2 = {3,4,6};
// int[] result = array_Copy(arr1,arr2);
int[] result = array_for(arr1,arr2);
System.out.println(Arrays.toString(result));
}
// for循环实现
public static int[] array_for(int[] array1,int[] array2){
// 获取两个数组的长度
int alen = array1.length;
int blen = array2.length;
int sum = alen+blen;
// 初始化数组
int[] newarr = new int[sum];
int index = 0;
// for循环的第二种方式 for (循环变量类型 循环变量名称 : 要被遍历的对象) 循环体
for (int item:array1){
newarr[index] = item;
index++;
}
for (int item:array2){
newarr[index] = item;
index++;
}
return newarr;
}
}
import java.util.Arrays;
public class java_23 {
public static void main(String[] args) {
int[] arr1 = {1,2,5};
int[] arr2 = {3,4,6};
// int[] result = array_Copy(arr1,arr2);
// int[] result = array_for(arr1,arr2);
int[] result = array_copyOf(arr1,arr2);
System.out.println(Arrays.toString(result));
}
// 利用数组的copyOf实现
public static int[] array_copyOf(int[] array1,int[] array2){
int alen = array1.length;
int blen = array2.length;
// 用copyOf对array1进行扩容
array1 = Arrays.copyOf(array1,alen+blen);
// 将array2放入array1中
// 利用arraycopy传入五个参数,目标数组、起始位置以及原数组、起始位置、拷贝的长度
System.arraycopy(array2,0,array1,alen,blen);
return array1;
}
}
上一篇:java22--查找数组中是否存在某个元素