Получить список без первых и последних трёх элементов

13. Получить список без первых и последних трёх элементов

Условие задачи:
📌 Есть List<String> произвольной длины.
Нужно за одну стрим-операцию (один конвейер) получить список:

  • без первых 3 элементов,

  • без последних 3 элементов.

Исходные данные (пример):

List<String> list = List.of(
    "a","b","c","d","e","f","g","h","i","j"
);

Спойлеры к решению
Подсказки
💡 Для пропуска первых элементов используется skip(n).
💡 Для ограничения количества элементов используется limit(n).
💡 Количество элементов после обрезки можно вычислить как
list.size() - 6.
💡 Весь код должен быть в одном stream-конвейере.

Решение
List<String> result = list.stream()
        .skip(3)
        .limit(Math.max(0, list.size() - 6))
        .toList();