1. 概述
在我们开发项目的过程中,有可能需要把2个数组合并为1个新的数组,具体流程图如下:

合并两个数组.png
原理就是:其实就是两个数组长度相加即可,代码如下;
/**
* 合并两个数组
*
* @param arrayLhs :左边的数组
* @param arrayRhs :右边的数组
* @return
*/
private static Object combineArray(Object arrayLhs, Object arrayRhs) {
Class<?> localClass = arrayLhs.getClass().getComponentType();
// 第一个数组的长度
int i = Array.getLength(arrayLhs);
// 数组总共的长度 = 第一个数组长度 + 第二个数组长度
int j = i + Array.getLength(arrayRhs);
Object result = Array.newInstance(localClass, j);
for (int k = 0; k < j; ++k) {
if (k < i) {
Array.set(result, k, Array.get(arrayLhs, k));
} else {
Array.set(result, k, Array.get(arrayRhs, k - i));
}
}
return result;
}
1>:获取第一个数组长度;
2>:新数组长度就 = 第一个数组长度 + 第二个数组长度;
3>:然后遍历新数组,如果 k<j,就把第一个数组元素插入,否则就把第二个数组的元素插入;
就是这样,这个就是合并两个数组的方法;