我有以下方法getTeams()
,该方法会返回特定帐户(List<Team>
)的小组this.teams
列表。
我想返回仅有效的团队(find.where().eq("active",true)
)
我需要满足条件的团队列表(活跃团队),但我无法做到。我的意思是我能够返回this.teams
或活跃的团队。那我怎么能把这些结合起来呢?任何帮助深表感谢!感谢。
public List<Team> getTeams() {
return Team.find.where().eq("active", true).findList();
//return this.teams;
}
答案 0 :(得分:2)
使用Java 8,您可以使用单个语句(假设List<Team>
为teams
且Team
类型具有.isActive()
方法:
return this.teams.stream()
.filter(Team::isActive)
.collect(Collectors.toList());
但是,如果您正在使用某些旧版本的Java,则可以执行以下操作:
List<Team> result = new ArrayList<Team>();
for (Team team : this.teams) {
if (team.isActive()) {
result.add(team);
}
}
return result;