从列表中删除元素

问题描述 投票:1回答:2

我有一个列表,其中有一个对象。从该对象我获取一个值并将该值设置为一个新的不同对象。在此之后,我将新对象添加到列表中。现在我只需要列表中的新对象并删除旧对象。

public void function(List<Activities> listOfActivities)
{
    String name = null;
    for (Activities activities : listOfActivities)
    {
        if (activities instanceOf IndoorGames)
        {
            name = activities.getName();
        }
    }
    Outdoorgames games = new OutdoorGames();
    games.setName(name);

    listOfActivities.add(OutdoorGames);
}

现在我的列表有两个对象,我想删除旧对象,即IndoorGames。

所以我这样做了。

ListIterator<Activities> iterator = listOfActivities.listIterator();
while(iterator.hasNext())
{
    Activities a = iterator.next();
    if (a instanceOf IndoorGames)
    {
        iterator.remove(a);
    }
}

这是正确的方法吗?

java
2个回答
© www.soinside.com 2019 - 2024. All rights reserved.