У меня есть список типа Fruit.
Я ищу удалить пары APPLE, BANANA, только если они соседние и в этом порядке.
Например:
val basket: Fruitbasket = List(PEAR, APPLE, BANANA, CHERRY)
Сокращено до:
LIST(PEAR, CHERRY)
Другой пример:
val basket2: Fruitbasket = List(PEAR, APPLE, PEAR, BANANA, CHERRY)
Не будет уменьшено и останется как:
List(PEAR, APPLE, PEAR, BANANA, CHERRY)
Я понимаю, что архивирование хвостом - это способ сравнения соседних элементов, но как лучше всего отфильтровать и разархивировать?
basket.zip(basket.tail)