Java-基于条件的返回列表

Java-基于条件的返回列表,java,list,return,Java,List,Return,我有以下方法getTeams(),它返回特定帐户的团队列表list(即this.teams)。 我想返回只处于活动状态的团队(find.where().eq(“active”,true)) 我需要满足条件的帐户团队列表(活动团队),但我无法这样做。我的意思是,我可以返回这个。团队或处于活动状态的团队。那么我怎样才能把这些结合起来呢?非常感谢您的帮助!谢谢 public List<Team> getTeams() { return Team.find.where().eq("a

我有以下方法
getTeams()
,它返回特定帐户的团队列表
list
(即
this.teams
)。
我想返回只处于活动状态的团队(
find.where().eq(“active”,true)

我需要满足条件的帐户团队列表(活动团队),但我无法这样做。我的意思是,我可以返回
这个。团队
或处于活动状态的团队。那么我怎样才能把这些结合起来呢?非常感谢您的帮助!谢谢

public List<Team> getTeams() {
    return Team.find.where().eq("active", true).findList();
    //return this.teams;
}
公共列表getTeams(){
return Team.find.where().eq(“active”,true).findList();
//把这个还给我。团队;
}

使用Java 8,您可以用一条语句来完成这项工作(假设您有一个
列表
作为
团队
,并且
团队
类型有一个
.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;
List result=new ArrayList();
for(团队:this.teams){
如果(team.isActive()){
结果:添加(团队);
}
}
返回结果;

返回一个或另一个的条件是什么?@kocko但我刚收到通知,说你已经回答了我的问题,这对我很有效!但现在我看不到答案?还有投票否决?!但是为什么?我能知道原因吗?我取消了删除答案。我删除了它,因为我认为返回o是有条件的ne或其他列表。@kocko条件/标准是,该方法应返回特定帐户的活动团队!您已经理解了我的问题,并提供了解决方案!但为什么现在要删除它?我认为我的不是java 8,而是第二个非常有效的解决方案!这实际上是一个使用for循环的很好的解决方案。我将保留该解决方案不要紧,谢谢!