检索数组类名称

我有问题。

在一个方法中,我收到一个通用的Object作为参数,我必须检索该类的名称

public void myMethod(Object o) String className = o.getClass().getName(); ... } 

它工作,除非我给方法数组。 例如,如果传递给方法的数组为double( double[] ),则getClass().getName()返回给我[D

我怎样才能找到像double[]这样的东西?

[D表示一系列双打。 请查看此链接以获取有关类名的说明。 为什么你喜欢double[]类的东西呢?

您正在寻找的类的简单名称:

 System.out.print(new String[0].getClass().getSimpleName()); 

结果很好:

 String[] 

如果你使用包装类,你会得到’ [Ljava.lang.Double

 Double[] d = new Double[10] 

d.getClass()。getName()为您提供[Ljava.lang.Double