Java 如何将ArrayList[]事务转换为Transaction[]数组

Java 如何将ArrayList[]事务转换为Transaction[]数组,java,android,arrays,arraylist,Java,Android,Arrays,Arraylist,我需要创建一个动态的Listview,其中包含“Transaction”对象中已经存在的事务,但是由于事务的数量可以是可变的,首先我需要创建一个Transaction对象的ArrayList,并将其转换为一个数组以将其传递给Listview适配器。我试着这样做: ArrayList <Transaction> transaction_data2 = new ArrayList<Transaction>(); transaction_data2.ad

我需要创建一个动态的
Listview
,其中包含“
Transaction
”对象中已经存在的事务,但是由于事务的数量可以是可变的,首先我需要创建一个
Transaction
对象的
ArrayList
,并将其转换为一个数组以将其传递给Listview适配器。我试着这样做:

ArrayList <Transaction> transaction_data2 = new ArrayList<Transaction>();
            transaction_data2.add(new Transaction("0000324455678", "25/05/2014","2.750,25"));
            transaction_data2.add(new Transaction("0000324456599", "25/05/2014","12.000,00"));
            transaction_data2.add(new Transaction("0000324456621", "26/05/2014","780,00"));
            transaction_data2.add(new Transaction("0000324456686", "27/05/2014","658,50"));
            transaction_data2.add(new Transaction("0000324456686", "27/05/2014","658,50"));
            transaction_data2.add(new Transaction("0000324456699", "27/05/2014","128,00"));

            Transaction transaction_data[] =  new Transaction[transaction_data2.size()]; 
            transaction_data = (Transaction[]) transaction_data2.toArray();
ArrayList事务_data2=new ArrayList();
交易数据2.add(新交易(“0000324445678”、“2014年5月25日”、“2.750,25”);
交易数据2.add(新交易(“0000324456599”、“2014年5月25日”、“12.000,00”);
交易数据2.add(新交易(“00003244456621”、“2014年5月26日”、“780,00”);
交易数据2.add(新交易(“00003244456686”、“2014年5月27日”、“658,50”);
交易数据2.add(新交易(“00003244456686”、“2014年5月27日”、“658,50”);
交易数据2.add(新交易(“00003244456699”、“2014年5月27日”、“128,00”);
事务处理数据[]=新事务处理[事务处理数据2.size()];
事务_数据=(事务[])事务_数据2.toArray();
但我有一个错误:

java.lang.ClassCastException:java.lang.Object[]无法强制转换为 com.myproyect.Transaction[]

有什么建议吗

提前非常感谢…

请使用以下内容:

        Transaction transaction_data[] =  new Transaction[transaction_data2.size()]; 
        transaction_data = (Transaction[]) transaction_data2.toArray(transaction_data);
toArray
不带参数返回一个对象[],而当您传递一个数组时,它将用项目填充该数组

Transaction[] transaction_data = transaction_data2.toArray(new Transaction[transaction_data2.size()]);

请先研究:

尝试使用类似的方法

ArrayList<Transaction > stock_list = new ArrayList<Transaction >();
stock_list.add("stock1");
stock_list.add("stock2");
Transaction [] stockArr = new Transaction [stock_list.size()];
 stockArr = stock_list.toArray(stockArr);
for(String s : stockArr)
    System.out.println(s);
ArrayList stock_list=new ArrayList();
库存清单。添加(“库存1”);
库存清单。添加(“库存2”);
事务处理[]stockArr=新事务处理[stock_list.size()];
stockArr=库存清单toArray(stockArr);
用于(字符串s:stockArr)
系统输出打印项次;
非常感谢,错过了“深夜”参数。