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循环的很好的解决方案。我将保留该解决方案不要紧,谢谢!