Вы должны быть в состоянии сделать это как однострочник, например:
Set<Integer> set = Arrays.stream(arcs).flatMapToInt(Arrays::stream).collect(Collectors.toSet());
Обновлено: Джек комментирует ниже, что Collectors.toSet () не гарантирует возврат HashSet - на практике я думаю, что обычно это происходит, но никаких гарантий - поэтому было бы лучше использовать:
Set<Integer> set = Arrays.stream(arcs).flatMapToInt(Arrays::stream)
.collect(Collectors.toCollection(() -> new HashSet<>()));
И, как указывает DodgyCodeException, в примере OP возникла дополнительная проблема, которую я не решал, поэтому настройте ее следующим образом:
Set<Integer> set = Arrays.stream(arcs)
.flatMapToInt(Arrays::stream)
.boxed() // <-- converts from IntStream to Stream<Integer>
.collect(Collectors.toCollection(() -> new HashSet<>()));