【发布时间】:2020-06-30 18:15:46
【问题描述】:
我有这个枚举结构List<Role>
public enum Role implements GrantedAuthority {
ROLE_ADMIN, ROLE_CLIENT;
public String getAuthority() {
return name();
}
}
我试图实现这个:
Stream<String> stringStream = roles.stream().filter(Objects::nonNull)
.map(s -> s.getAuthority().toString());
String s1 = stringStream.toString();
响应 DTO:
public class DTO {
private String role;
}
但我得到的回应是:
{
"role": "java.util.stream.ReferencePipeline$3@7d499cdc",
}
我想返回类似的东西:
{
"role": [
ROLE_ADMIN, ROLE_CLIENT
]
}
如何以这种方式打印响应?
【问题讨论】:
-
流中有几个终端操作可供您使用。请查看tutorialspoint.com/java-8-stream-terminal-operations。
.collect()对你有用。 -
什么是
roles? -
我的错。只是一个变量。
-
只是一个变量!!包含什么?哪种类型?
-
用于存储列表
标签: java spring java-stream dto