Java 空集合上的流,添加值
我想做的是将1到15之间的值添加到空的Java 空集合上的流,添加值,java,java-8,java-stream,Java,Java 8,Java Stream,我想做的是将1到15之间的值添加到空的HashSet Set<Long> vipSeats = new HashSet<>(); Set vipSeats=new HashSet(); 我可以避免使用循环吗?Java是否有对它的功能支持,例如流?如果您正在寻找一个计算结果符合所需集的表达式,那么这是一个很好的答案 LongStream.rangeClosed(1, 15).boxed().collect(Collectors.toSet()); 如果需要将数字添加到
HashSet
Set<Long> vipSeats = new HashSet<>();
Set vipSeats=new HashSet();
我可以避免使用循环吗?Java是否有对它的功能支持,例如流?如果您正在寻找一个计算结果符合所需集的表达式,那么这是一个很好的答案
LongStream.rangeClosed(1, 15).boxed().collect(Collectors.toSet());
如果需要将数字添加到现有集合的语句,可以执行以下操作:
LongStream.rangeClosed(1,15).forEach(vipSeats::add);
Set vipSeats=newhashset(LongStream.rangeClosed(1,15).boxed().collect(Collectors.toSet());)
因为OP要求提供一个HashSet
,我们无法保证收集器返回的Set
类型。toSet()
@YassinHajaj或收集器。toCollection(()->vipSeats)
,以避免创建两个集。@Tunaki更好!在这种情况下,您不需要.boxed()
…