gpt4 book ai didi

java - 使用 Java 8 Stream API 检查枚举列表

转载 作者:行者123 更新时间:2023-12-03 19:44:16 26 4
gpt4 key购买 nike

这里是 Java 8。我有以下类(class):

public enum Role {
Admin,
FunUser,
SeriousUser,
...
BasicUser;
}

@Getter
@Setter
public class User {
private String login;
private List<Role> roles;
...
}

我想使用 Stream API 编写一些代码来检查当前用户是“Admin”还是“SeriousUser”。

迄今为止,我最好的尝试(有效)仍然不是 Java 8ish:

if (user.getRoles().contains(Role.Admin) || user.getRoles().contains(Role.SeriousUser)) {
...
}

有没有办法通过 Java 8 Stream API 对多个“精选”角色执行枚举检查?

最佳答案

其他选项:

if(Stream.of(Role.Admin, Role.SeriousUser).anyMatch(user.getRoles()::contains)){
...
}

关于java - 使用 Java 8 Stream API 检查枚举列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60170618/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com