如何遍历对象列表,传递给方法然后将返回值存储在数组列表中?

时间:2013-11-21 11:26:02

标签: java arrays list arraylist

我想迭代一个Team对象列表,每个对象都有一个字符串和三个整数。我想将它传递给一个方法,该方法将第一个Team对象与第二个对象进行比较,然后是第二个到第三个,依此类推,然后最终根据比较得到返回的枚举器并将其存储到数组列表中。

这是我到目前为止所做的,但是当我运行它时,它会出现一个空值异常。

TeamList = leagueRepository.getTeamList();
    int i = 0;

    for(Team team: teamList) {
        TeamStatus teamStatus = team.leagueStatus(team, team);
        verdictArray.add(i, teamStatus);

如何获取列表中的第一个和第二个Team对象?

4 个答案:

答案 0 :(得分:2)

如果TeamListList,您可以调用get(0)获取第一个条目,get(1)获取第二个条目。

如果您只想对列表进行排序,可以查看此帖子

Java List Sorting: Is there a way to keep a list permantly sorted automatically like TreeMap?

答案 1 :(得分:0)

要获取列表中的第一个和第二个对象,您应该使用list.get(0)list.get(1)

答案 2 :(得分:0)

最简单的方法是使用索引进行迭代:

for (int i = 0; i < list.size() - 1; i++) {
    Team current = list.get(i);
    Team next = list.get(i + 1);
    // do something with current and next
}

您还可以在每次迭代时存储前一个元素:

Team previous = null;
for (Team current : list) {
    if (previous != null) {
        // do something with previous and current
    }
    previous = current;
}

答案 3 :(得分:0)

这只是排序。如果您使用 Collections.sort with comparator ,您可以实现此目的。