0

我有一张决赛桌:

    final Item itemsList[] = new Item[]{
            new Item(R.drawable.per1,contacts.get(0).getName(),contacts.get(0).getTitle(), contacts.get(0).getPhone(),contacts.get(0).getTitle(),contacts.get(0).getEmail())

    };

这是我的问题。我想在此表中添加多个元素。我从列表“联系人”中获得的元素。如果我在“联系人”列表中有 10 个元素,我想将 10 个元素添加到“itemList”中,但我不能这样做,因为我的 itemList 是最终的并且它必须是最终的,因为我需要这种方式。如何动态地将元素数量添加到 itemList?

4

2 回答 2

2

List如果您需要添加未知数量的项目,您最好只使用 a :

final List<Item> myList = new ArrayList<Item>();
myList.add(new Item(...));
//add more Items
于 2012-05-31T09:09:39.987 回答
1

制作itemList[]final 意味着一旦初始化就不能更改引用,而不是其内容。所以,如果你在初始化时知道​​元素的数量,itemList你可以这样做

int itemsCount = ...;
final Item itemList[] = new Item[itemsCount];

然后将其内容设置为

for (int i = 0; i < itemsCount; i++) {
     itemsList[i] = new Item(...);
}

此外,正如 Jave 建议的那样,使用List<>可能更适合您的情况。

于 2012-05-31T09:08:57.300 回答