【CORE JAVA】反射应用:通用方法-扩展数组长度
2012-09-10 10:58
253 查看
/**
* 通用数组扩展方法
* 可以使用Object类型的变量引用任何类型的对象
* 用Array.newInstance(componentType, newLength);生成具体类型的对象
* 然后用Object的变量来引用这个生成的对象
* @param a是Object类型的变量
* @return Object类型的变量
*/
static Object goodArrayGrow(Object a)
{
Class c1 = a.getClass();
if(!c1.isArray())
return null;
Class componentType = c1.getComponentType();//返回数组类型
int length = Array.getLength(a);
int newLength = length * 11 / 10 + 10;
//生成新的对应类型,新的长度的数组
Object newArray = Array.newInstance(componentType, newLength);
System.arraycopy(a, 0, newArray, 0, length);
return newArray;
}
* 通用数组扩展方法
* 可以使用Object类型的变量引用任何类型的对象
* 用Array.newInstance(componentType, newLength);生成具体类型的对象
* 然后用Object的变量来引用这个生成的对象
* @param a是Object类型的变量
* @return Object类型的变量
*/
static Object goodArrayGrow(Object a)
{
Class c1 = a.getClass();
if(!c1.isArray())
return null;
Class componentType = c1.getComponentType();//返回数组类型
int length = Array.getLength(a);
int newLength = length * 11 / 10 + 10;
//生成新的对应类型,新的长度的数组
Object newArray = Array.newInstance(componentType, newLength);
System.arraycopy(a, 0, newArray, 0, length);
return newArray;
}
相关文章推荐
- java利用反射扩展任意数组的方法
- java利用反射扩展任意数组的方法
- Java基础---基础加强---增强for循环、自动拆装箱及享元、枚举的作用、实现带有构造方法、透彻分析反射的基础_Class类、成员变量的反射、数组参数的成员方法进行反射、数组的反射应用
- 【Core Java Volume 5】集合算法---查找数组、集合最大值的通用方法
- Java基础---基础加强---增强for循环、自动拆装箱及享元、枚举的作用、实现带有构造方法、透彻分析反射的基础_Class类、成员变量的反射、数组参数的成员方法进行反射、数组的反射应用
- Java_反射应用_通过Java反射调用方法
- 黑马程序员——JAVA高新技术---反射--概述,类中构造方法、字段、方法和数组的反射,框架原理,JavaBean简述
- 有关Java中数组和反射的应用
- (Java基础--反射)构造方法的反射应用
- wrong number of arguments,java方法反射时数组参数的坑
- Java反射在Main方法的中的而应用
- java中申请不定长度数组ArrayList的方法
- Java -- JDBC_利用反射及 JDBC 元数据编写通用的查询方法
- Java反射在Main方法的中的而应用
- java中按字节获得字符串长度的两种方法 Java问题通用解决代码
- 【Core Java Volume 3】反射---编写泛型数组代码
- java中数组排序arrays.sort方法应用
- wrong number of arguments,java方法反射时数组参数的坑
- Java基础学习应用_数组常用方法与排序(二)
- java编程:输入int数组的方法一(不知道长度)