您好,我目前有一个枚举集,想将此枚举集转换为字符串。
所以转换Set <AlertSide> mySet = Sets.newHashSet(AlertSide.THREAT,AlertSide.TARGET);
至'THREAT','TARGET'
最好的方法是什么?我不太喜欢流媒体,但是我认为正确的思路是mySet.stream().map(Enum::toString).collect(Collectors.joining(","))
但这只给我'THREAT,ALERT'
也许有一种使用Strings.join的方法?
最佳答案
首先,如果您有Set
的枚举,则应使用EnumSet
(从Java 5开始可用):
Set<AlertSide> mySet = EnumSet.of(AlertSide.THREAT, AlertSide.TARGET);
如果要使用内容为
'THREAT','TARGET'
的字符串,则需要自己添加单引号:mySet.stream().map(e -> "'" + e + "'").collect(Collectors.joining(","))
结果
'THREAT','TARGET'