我正在尝试使用以下方法转换具有Vector方法的ObjectstoString()

(String[]) mObjectVector.toArray(new String[mObjectVector.size()])

要么

(String[]) mObjectVector.toArray(new Object[mObjectVector.size()])

但是,它给了我以下错误:

java.lang.ArrayStoreException: source[0] of type .../myObjectType; cannot be stored in destination array of type [Ljava/lang/String;



java.lang.ClassCastException: [Ljava.lang.Object;

怎么了?

最佳答案

您不能将对象转换为该对象的toString方法的返回类型。您必须在调用Vector时通过遍历toString对象来构建新数组。

String[] stringArray = new String[mObjectVector.size()];
for (int i=0; i < mObjectVector.size(); i++) {
   stringArray[i] = mObjectVector.get(i).toString();
}

关于java - 将对象 vector 转换为字符串数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12656454/

10-12 05:17