方法一:
import java.util.Arrays;
import java.util.Scanner;
/*
生成一个新的数组
Arrays.copyOf(arr, 5);
int [] arr = {1,2,3,4,5,6,7,8,9,10};
int[] arr1 = Arrays.copyOf(arr, 5);
int[] arr2 = Arrays.copyOf(arr, 20);
*/
public class ArraysTest4 {
import java.util.Scanner;
/*
生成一个新的数组
Arrays.copyOf(arr, 5);
int [] arr = {1,2,3,4,5,6,7,8,9,10};
int[] arr1 = Arrays.copyOf(arr, 5);
int[] arr2 = Arrays.copyOf(arr, 20);
*/
public class ArraysTest4 {
public static void main(String[] args) {
//数组的复制
int [] arr = {6,7,8,9,10,11};
int[] arr1 = {1,2,3,4,5};
int[] arr2 = Arrays.copyOf(arr, 20);
System.out.println("-->"+Arrays.toString(arr2));
System.out.println(Arrays.toString(arr1));
//数组的合并 1
//1.确定数组的长度
int arr3[] = new int[arr.length+arr1.length];
//复制第一部分
for(int i = 0;i<arr.length;i++){
arr3[i] =arr[i];
}
//复制第二部分
for(int i=arr.length;i<arr3.length;i++ ){
arr3[i] = arr1[i-arr.length];
}
//输出结果
System.out.println(Arrays.toString(arr3));
}
}
//数组的复制
int [] arr = {6,7,8,9,10,11};
int[] arr1 = {1,2,3,4,5};
int[] arr2 = Arrays.copyOf(arr, 20);
System.out.println("-->"+Arrays.toString(arr2));
System.out.println(Arrays.toString(arr1));
//数组的合并 1
//1.确定数组的长度
int arr3[] = new int[arr.length+arr1.length];
//复制第一部分
for(int i = 0;i<arr.length;i++){
arr3[i] =arr[i];
}
//复制第二部分
for(int i=arr.length;i<arr3.length;i++ ){
arr3[i] = arr1[i-arr.length];
}
//输出结果
System.out.println(Arrays.toString(arr3));
}
}
输出结果:
-->[6, 7, 8, 9, 10, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[1, 2, 3, 4, 5]
[6, 7, 8, 9, 10, 11, 1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
[6, 7, 8, 9, 10, 11, 1, 2, 3, 4, 5]
方法二:
import java.util.Arrays;
import java.util.Scanner;
/*
1.生成一个新的数组
Arrays.copyOf(arr, 5);
int [] arr = {1,2,3,4,5,6,7,8,9,10};
int[] arr1 = Arrays.copyOf(arr, 5);
int[] arr2 = Arrays.copyOf(arr, 20);
2.不会生成一个新的数组
System.arraycopy(arr, 0, arr3, 0, arr.length);
src:源数组
srcPos:源数组 开始的下标
dest:目标数组
destPos:目标数组 开始的下标
length:源数组复制数据的长度
System.arraycopy(src, srcPos, dest, destPos, length);
*/
public class ArraysTest6 {
import java.util.Scanner;
/*
1.生成一个新的数组
Arrays.copyOf(arr, 5);
int [] arr = {1,2,3,4,5,6,7,8,9,10};
int[] arr1 = Arrays.copyOf(arr, 5);
int[] arr2 = Arrays.copyOf(arr, 20);
2.不会生成一个新的数组
System.arraycopy(arr, 0, arr3, 0, arr.length);
src:源数组
srcPos:源数组 开始的下标
dest:目标数组
destPos:目标数组 开始的下标
length:源数组复制数据的长度
System.arraycopy(src, srcPos, dest, destPos, length);
*/
public class ArraysTest6 {
public static void main(String[] args) {
//数组的复制
int [] arr = {6,7,8,9,10,11};
int[] arr1 = {1,2,3,4,5};
//1.确定数组的长度
int arr3[] = new int[arr.length+arr1.length];
//复制第1部分
//
//System.arraycopy(src, srcPos, dest, destPos, length);
System.arraycopy(arr, 0, arr3, 0, arr.length);
//复制第2部分
System.arraycopy(arr1, 0, arr3, arr.length, arr1.length);
//输出结果
System.out.println(Arrays.toString(arr3));
}
/*
* 1~20 随机数 存储到 长度为20的数组内 要求数组元素不重复
* 随机数
*/
}
//数组的复制
int [] arr = {6,7,8,9,10,11};
int[] arr1 = {1,2,3,4,5};
//1.确定数组的长度
int arr3[] = new int[arr.length+arr1.length];
//复制第1部分
//
//System.arraycopy(src, srcPos, dest, destPos, length);
System.arraycopy(arr, 0, arr3, 0, arr.length);
//复制第2部分
System.arraycopy(arr1, 0, arr3, arr.length, arr1.length);
//输出结果
System.out.println(Arrays.toString(arr3));
}
/*
* 1~20 随机数 存储到 长度为20的数组内 要求数组元素不重复
* 随机数
*/
}
输出结果:
[6, 7, 8, 9, 10, 11, 1, 2, 3, 4, 5]