java 重定义数组的实现方法(与VB的ReDim相像)

复制代码 代码如下:

//param objArr   the expanded object of Array.
         //param  newLength  the length of the new Array  
  public static Object getNewArr(Object objArr, int newLength) {
if (!objArr.getClass().isArray()) {//判断类型
return null;
}
// get the array's componentType
Class componentType = objArr.getClass().getComponentType();//获得类型
//get a newInstance of a Array object   Object newArray = Array.newInstance(componentType, newLength);//新建数组对象
               //copy the array 
System.arraycopy(objArr, 0, newArray, 0, Array.getLength(objArr));//把原数组数据copy到新建数组中,其中newLength要大于元objArr的length,否则此句报错
return newArray;
}

你可能感兴趣的:(java 重定义数组的实现方法(与VB的ReDim相像))