-1

我正在使用 java 反射在运行时调用方法。如何将日期对象转换为对象数组?

IE,

Method m = ....;
Object[] result = (Object[]) m.invoke(...);

public Date getDate() {
   return new Date();
}

会给:

java.lang.ClassCastException: java.util.Date cannot be cast to [Ljava.lang.Object;

编辑:是的,我应该将它添加到一个对象数组中并返回它。

4

1 回答 1

1

你不需要调用是一个可变参数方法。你可以做。

 Object result = method.invoke (instance , new Date ());

无需创建数组。

如果它是您想要更改的结果,您可以包装它,但我怀疑没有真正需要这样做。我会看看你是否真的需要一个数组

于 2012-12-14T21:21:40.747 回答