如何将"设置"<String>转换为"设置"<Object>



如何将strRoles转换为Set<Role>。提前感谢

Set<String> strRoles = signUpRequest.getRoles();
Set<Role> roles = new HashSet<>();

角色模型

@Document(collection = "roles")
public class Role {   
@Id
private String id;
private ERole name;
}

Erole.enum

public enum ERole {
ROLE_ADMIN,
ROLE_USER
}

使用流:

Set<Role> convertStringSetToRoleSetWithStreams(final Set<String> rolesInString) {
return rolesInString.stream().map(roleInString -> {
final Role role = new Role();
role.setName(ERole.valueOf(roleInString));
return role;
}).collect(Collectors.toSet());
}

无流:

Set<Role> convertStringSetToRoleSetWithoutStreams(final Set<String> rolesInString) {
final Set<Role> rolesInObject = new HashSet<>();
for (final String roleInString : rolesInString) {
final Role role = new Role();
role.setName(ERole.valueOf(roleInString));
rolesInObject.add(role);
}
return rolesInObject;
}

如果答案有效,请随意接受。

最新更新