转换的ArrayList到数组抛出java.lang.ArrayStoreException [英] Convert ArrayList to Array throws java.lang.ArrayStoreException
问题描述
我有 convertToArray()
的方法其中的ArrayList
转换为一个数组。我希望每一个元素被添加到的ArrayList
。
公共类表扩展的ArrayList<行>
{
公共字符串appArray []; //单申请人细节阵
公共字符串tableArray [] []; //每一个申请人的数组
/ **
*构造类表对象
* /
市民餐桌()
{
}公共无效addApplicant(行应用程序)
{
加(应用);
convertToArray();
}公共无效convertToArray()
{
INT X =尺寸();
appArray =的toArray(新的String [X]);
}
}
当我称之为 addApplication(行的应用程序)
方法我得到的错误: java.lang.ArrayStoreException
所以我改变了我的 addApplicant()
方法:
公共无效addApplicant(行应用程序)
{
加(应用);
如果(大小()!= 0)
convertToArray();
}
我得到同样的错误消息。任何想法,为什么?我想如果它检查的ArrayList
已转换之前元素的错误不应该抛出?
如果需要,我可以提供完整的错误
ArrayStoreException信息抛出,指示已尝试做出了错误类型的对象存储到一个对象数组。
块引用>因此,
公共行[] appArray; //行 - 因为你的ArrayList延长LT&;行>公共无效convertToArray()
{
INT X =尺寸();
appArray =的toArray(新行[X]);
}i have a method
convertToArray()
which converts anArrayList
to an array. I want to call this method every time an element is added to theArrayList
.public class Table extends ArrayList<Row> { public String appArray[]; //Array of single applicant details public String tableArray[][]; //Array of every applicant /** * Constructor for objects of class Table */ public Table() { } public void addApplicant(Row app) { add(app); convertToArray(); } public void convertToArray() { int x = size(); appArray=toArray(new String[x]); }
}
When i call the
addApplication(Row app)
method I get the error:java.lang.ArrayStoreException
So I changed my
addApplicant()
method to:public void addApplicant(Row app) { add(app); if (size() != 0) convertToArray(); }
I get the same error message. Any ideas why? I figured if it checks the
ArrayList
has elements before converting it the error should not be thrown?I can provide the full error if needed
解决方案ArrayStoreException thrown to indicate that an attempt has been made to store the wrong type of object into an array of objects.
So,
public Row[] appArray; // Row - because you extend ArrayList<Row> public void convertToArray() { int x = size(); appArray = toArray(new Row[x]); }
这篇关于转换的ArrayList到数组抛出java.lang.ArrayStoreException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!