给定两个数组,将其合并并且按照升序排列
public class Test {
public static void main(String[] args) {
//声明数组arr1
int[] arr1 = {1,7,9,11,13,15,17,19};
//声明数组arr2
int[] arr2 = {2,4,6,8,10};
//声明数组mergeArray 将arr1和arr2放进去
int[] mergeArray = mergeArray(arr1, arr2);
System.out.println(Arrays.toString(mergeArray));
}
/**
* ③现在给出两个数组
数组arr1: "1,7,9,11,13,15,17,19";
数组arr2: "2,4,6,8,10"
两个数组合并之后数组arr,在按照升序排列;
*/
public static int[] mergeArray(int[] arr1,int[] arr2){
//判断给定数组非空
if (arr1 == null || arr2 == null) {
return null;
}
/*
* 思路:
* 1. 确定新数组的长度,怎么确定?
* arr1.length + arr2.length;
* 2. 将两个数组中的元素复制到新数组
* 遍历两个数字,将元素赋值到新数组
*/
//1. 确定新数组的长度,arr1.length + arr2.length;
int[] newArr = new int[arr1.length + arr2.length];
//2. 将两个数组中的元素复制到新数组
for (int i = 0; i < arr1.length; i++) {
//将arr1中所有元素赋值到newArr中
newArr[i] = arr1[i];
}
for (int j = 0; j < arr2.length; j++) {
//将arr2中所有元素赋值到newArr中
newArr[j+arr1.length] = arr2[j];
}
//升序排序, 调用Arrays方法 static void sort(byte[] a) 按照数字顺序排列指定的数组。
Arrays.sort(newArr);
return newArr;
}
}