java反射编写泛型数组代码
来源:互联网 发布:推荐几个潮男淘宝店 编辑:程序博客网 时间:2024/06/05 08:34
1.java.lang.reflect包中的Array类允许动态的创建数组。
2.首先获取到a数组的类对象。
3.使用Class的getCompnentType获取到数组对象。
4.int[]可以转换为objec。但是不能转换为object[] 对象数组。
package test;import java.lang.reflect.Array;public class ReflectTest {public static void main(String[] args) {int[] a = {1,2,3,4,5};a=(int[])goodArrayGrow(a);arrayPrint(a);String[] b = {"vito","beijing","s"};b=(String[])goodArrayGrow(b);arrayPrint(b);}static Object goodArrayGrow(Object a){Class class1=a.getClass();if(!class1.isArray())return null;Class compentType = class1.getComponentType();int length = Array.getLength(a);int newLength = length*11/10+10;Object newArrayObject = Array.newInstance(compentType, newLength);System.arraycopy(a, 0, newArrayObject, 0, length);return newArrayObject;}static void arrayPrint(Object a){Class class1=a.getClass(); if(!class1.isArray()) return;Class compentType = class1.getComponentType();int length = Array.getLength(a);System.out.print(compentType.getName()+"["+length+"]={");for(int i=0;i<Array.getLength(a);i++)System.out.println(Array.get(a, i)+"");System.out.println("}");}}
运行结果:
int[15]={1,2,3,4,5,0,0,0,0,0,0,0,0,0,0,}java.lang.String[13]={vito,beijing,s,null,null,null,null,null,null,null,null,null,null,}
0 0
- java反射编写泛型数组代码
- 【Core Java Volume 3】反射---编写泛型数组代码
- 使用反射编写泛型数组代码
- 通过java的反射编写泛型数组
- 利用Java反射、泛型和apache/poi编写可通用的导出Excel代码
- java代码:双色球用数组和集合编写
- JAVA 反射 (5):数组和泛型数组
- Java高质量代码之 — 泛型与反射
- Java高质量代码之 — 泛型与反射
- Java高质量代码之 — 泛型与反射
- java数组反射
- java反射 String数组
- Java反射:数组
- Java反射八 数组
- java反射处理数组
- Java反射示例代码
- java反射代码
- java反射机制代码
- java获取当前日期的前一天日期与字符串日期之间的转换
- Android自定义属性
- 从Form窗口的Gridview导出Excel
- 解决 ASP.NET Chart 控件出错 为 ChartImg.axd 执行子请求时出错
- 射频电路基础知识
- java反射编写泛型数组代码
- Mahout
- 用 logcat 命令来查看 android 系统日志缓冲区的内容
- android性能优化
- 关于cocos2dx 对tiled地图编辑器的使用
- select的解析,以及在linux网络编程的应用
- vs内存泄露检查
- Coco2dx 图文混排 (一)
- Windows 时间相关