intersperse method

Queue<E> intersperse(
  1. Iterable<E> elementsToAdd, {
  2. int? count,
  3. int skip = 0,
  4. bool reverse = false,
})

Inserts an element in between each element.

1, 2, 3.intersperse(0) returns 1, 0, 2, 0, 3.

Optional count and skip:

1, 2, 3, 4.intersperse(0, count: 1) returns 1, 0, 2, 3, 4.

1, 2, 3, 4.intersperse(0, skip: 1) returns 1, 2, 0, 3, 0, 4.

Returns original if skip is negative or too high, or if count <= 0. High count has no extra effect.

Adds nothing if there are less than two elements.

Implementation

Queue<E> intersperse(
  Iterable<E> elementsToAdd, {
  int? count,
  int skip = 0,
  bool reverse = false,
}) {
  return h
      .intersperseIterable(
        elementsToAdd: elementsToAdd,
        original: this,
        count: count,
        skip: skip,
        reverse: reverse,
      )
      .toQueue();
}