gpt4 book ai didi

Java,如何将值添加到对象数组

转载 作者:行者123 更新时间:2023-12-02 03:39:29 25 4
gpt4 key购买 nike

我需要动态向对象数组添加值并将该数组变量传递给函数。

如果我手动添加值,效果很好。

Object[][] listData = {{"Cheese", "Pepperoni", "Black Olives"},{"Cheese",    
"Pepperoni", "Black Olives"}};

这是需要使用 listData 的函数。

TableModel tblModel = new DefaultTableModel(new String[]{"Date", "Action", "Amount"}, listData); 

但是如何从 for 循环将值添加到 listData 中?

ArrayList<Map<String, Object>> sampleArray =   (ArrayList)myPremiumspaid.get("Data"); 
for(int x =0; x<sampleArray.size(); x++)
{
//sampleArray.get(x).get("YearMonth");
//listData[][] = ""; stuck here
}

最佳答案

数组是固定大小的,创建数组对象后,您无法更新其大小/放大其大小。因此,要实现动态大小或自动增长大小,您需要使用 List 即。 ArrayList

Object[][] listData = {{"Cheese", "Pepperoni", "Black Olives"},{"Cheese",    
"Pepperoni", "Black Olives"}};

相反:

List<List<Object>> listData=new ArrayList<List<Object>>();
listData.add(Arrays.asList("Cheese", "Pepperoni", "Black Olives"));
listData.add(Arrays.asList("Cheese", "Pepperoni", "Black Olives"));

但是这个ArrayList需要传递到一个接受数组的函数中,因此,您可以将ArrayList转换为数组对象

TableModel tblModel = new DefaultTableModel(new String[]{"Date", "Action", "Amount"}, (Object[][]) listData.toArray()); 

but how can I add values into listData from a for loop? Now you could do it as follows:

ArrayList<Map<String, Object>> sampleArray =   (ArrayList)myPremiumspaid.get("Data"); 
for(int x =0; x<sampleArray.size(); x++)
{
//sampleArray.get(x).get("YearMonth");
listData.get(x).add(sampleArray.get(x).get("YearMonth"));
}

Codename One 的 DefaultTableModel 有一个 addRow接受数组或一系列对象的方法,因此只需使用:

((DefaultTableModel)tblModel).addRow("Cheese", "Pepperoni", "Black Olives"); 

应该可以。

关于Java,如何将值添加到对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37004889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com