Java 将对象向量转换为字符串数组
我正在尝试使用Java 将对象向量转换为字符串数组,java,Java,我正在尝试使用 (字符串[])mObjectVector.toArray(新字符串[mObjectVector.size()]) 或 (字符串[])mObjectVector.toArray(新对象[mObjectVector.size()]) 但是,它给了我以下错误: java.lang.ArrayStoreException:类型为…/myObjectType的源[0];无法存储在[Ljava/lang/String;类型的目标数组中。 及 java.lang.ClassCastExcept
(字符串[])mObjectVector.toArray(新字符串[mObjectVector.size()])
或
(字符串[])mObjectVector.toArray(新对象[mObjectVector.size()])
但是,它给了我以下错误:
java.lang.ArrayStoreException:类型为…/myObjectType的源[0];无法存储在[Ljava/lang/String;类型的目标数组中。
及
java.lang.ClassCastException:[Ljava.lang.Object;
怎么了?我想你不能在这里排列,因为你的向量有自定义对象
您需要手动循环该向量,并在对象上调用toString(),然后将其设置为字符串数组。我猜您不能在此处进行数组,因为您的向量具有自定义对象
您需要手动循环向量并调用对象上的toString(),然后将其设置为字符串数组。您不能将对象强制转换为该对象的返回类型
toString
方法。您必须在调用toString
时通过迭代向量
对象来构建新数组
String[] stringArray = new String[mObjectVector.size()];
for (int i=0; i < mObjectVector.size(); i++) {
stringArray[i] = mObjectVector.get(i).toString();
}
String[]stringArray=新字符串[mObjectVector.size()];
对于(int i=0;i
您无法将对象强制转换为该对象的返回类型toString
方法。您必须在调用toString
时通过迭代向量
对象来构建新数组
String[] stringArray = new String[mObjectVector.size()];
for (int i=0; i < mObjectVector.size(); i++) {
stringArray[i] = mObjectVector.get(i).toString();
}
String[]stringArray=新字符串[mObjectVector.size()];
对于(int i=0;i