java - 在Java中,如何动态确定数组的类型?

标签 java

Object o = new Long[0]
System.out.println( o.getClass().isArray() )
System.out.println( o.getClass().getName() )
Class ofArray = ???

运行前 3 行发出;

true
[Ljava.lang.Long;

我怎么得到???要长吗?我可以解析字符串并执行 Class.forname(),但这太糟糕了。有什么简单的方法?

最佳答案

随便写

Class ofArray = o.getClass().getComponentType();

来自 the JavaDoc :

public Class<?> getComponentType()

Returns the Class representing the component type of an array. If this class does not represent an array class this method returns null.

关于java - 在Java中,如何动态确定数组的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/212805/

相关文章:

java - 使用边界填充算法填充形状时出现堆栈溢出错误

java - Scala PDFBox 代码中出现错误

java - 打印 int 类型的变量(不包括函数)

java - 库抛出 AssertionError 使我的测试失败

java - JAVA 应用程序必须在 JSP 上运行吗?

java - 用spring同时获取object和header

java - 基本后台服务尝试打开套接字

java - 迭代列表的列表

java - 应该如何将 tomcat 与现有项目一起使用?

java - 无法跨不同网络连接套接字