写吧
Class ofArray = o.getClass().getComponentType();
来自JavaDoc:
public Class> getComponentType()
返回
Class
表示数组的组件类型.如果此类不表示此方法返回的数组类null
.
ddimitrov.. 22
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html#getComponentType():
public Class> getComponentType()返回
Class
表示数组的组件类型.如果此类不表示数组类,则此方法返回null ...
Daniel Spiew.. 6
@ddimitrov是正确的答案.放入代码看起来像这样:
publicClass testArray(T[] array) { return array.getClass().getComponentType(); }
更一般地说,我们可以先测试一下这个类型是否代表一个数组,然后得到它的组件:
Object maybeArray = ... Class> clazz = maybeArray.getClass(); if (clazz.isArray()) { System.out.printf("Array of type %s", clazz.getComponentType()); } else { System.out.println("Not an array"); }
一个具体示例是将此方法应用于已知组件类型的数组:
String[] arr = {"Daniel", "Chris", "Joseph"}; arr.getClass().getComponentType(); // => java.lang.String
很简单!
写吧
Class ofArray = o.getClass().getComponentType();
来自JavaDoc:
public Class> getComponentType()
返回
Class
表示数组的组件类型.如果此类不表示此方法返回的数组类null
.
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html#getComponentType():
public Class> getComponentType()返回
Class
表示数组的组件类型.如果此类不表示数组类,则此方法返回null ...
@ddimitrov是正确的答案.放入代码看起来像这样:
publicClass testArray(T[] array) { return array.getClass().getComponentType(); }
更一般地说,我们可以先测试一下这个类型是否代表一个数组,然后得到它的组件:
Object maybeArray = ... Class> clazz = maybeArray.getClass(); if (clazz.isArray()) { System.out.printf("Array of type %s", clazz.getComponentType()); } else { System.out.println("Not an array"); }
一个具体示例是将此方法应用于已知组件类型的数组:
String[] arr = {"Daniel", "Chris", "Joseph"}; arr.getClass().getComponentType(); // => java.lang.String
很简单!