浏览 1143 次
锁定老帖子 主题:创建一个同种类型数据的数组
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-08-08
使用 Array.newInstance(kind, size)可以按照指定类型和长度,创建一个指定类型的数组
package com.liuc.test.think.chapter15; import java.lang.reflect.Array; import java.util.Arrays; public class ArrayMaker<T> { private Class<T> kind; public ArrayMaker(Class<T> kind) { super(); this.kind = kind; } @SuppressWarnings("unchecked") T[] create(int size){ return (T[]) Array.newInstance(kind, size); } public static void main(String[] args) { ArrayMaker<String> stringMaker=new ArrayMaker<String>(String.class); String[] stringArray=stringMaker.create(9); System.out.println(Arrays.toString(stringArray)); } } 查看java源代码这是一个native方法,即是使用C或者C++实现的,速度相对也会很快 public static Object newInstance(Class<?> componentType, int length) throws NegativeArraySizeException { return newArray(componentType, length); } private static native Object newArray(Class componentType, int length) throws NegativeArraySizeException; 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |