Какие знаешь способы создания Stream

«Какие знаешь способы создания Stream» — вопрос из категории Java Core, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Java Stream можно создать несколькими способами:

  1. Из коллекции:
List<String> list = Arrays.asList("a", "b", "c");
Stream<String> stream = list.stream();
  1. Из массива:
String[] array = {"a", "b", "c"};
Stream<String> stream = Arrays.stream(array);
  1. Используя Stream.of():
Stream<String> stream = Stream.of("a", "b", "c");
  1. Используя Stream.builder():
Stream<String> stream = Stream.<String>builder()
    .add("a")
    .add("b")
    .build();
  1. Из файлов (Files.lines()):
Stream<String> lines = Files.lines(Paths.get("file.txt"));
  1. Генерирующие методы:
  • Stream.generate(): бесконечный поток
  • Stream.iterate(): поток на основе функции
  1. Примитивные стримы:
IntStream intStream = IntStream.range(1, 5);

Каждый способ подходит для разных сценариев работы с данными.