将<String>
类型的HashSet转换为<Long>
类型的HashSet的最佳/有效方法是什么?
答案 0 :(得分:3)
Set<Long> longSet = stringSet.stream().map(s-> Long.parseLong(s))
.collect(Collectors.toSet());
我还没有尝试过但应该工作
答案 1 :(得分:0)
改进sidgate的答案[当处理非常大的集合时]:你可以使用parallelStream()它应该在大集合上更有效,并用方法引用替换Long.parseLong(s)。
Set<Long> longSet = stringSet.parallelStream()
.map(Long::parseLong)
.collect(Collectors.toSet());
[编辑]如评论中所述,只有在处理非常大的集合时才使用parallelStream(),因为它会增加大量的开销。