sequence(序列)可以描述排列在单个线性维度中的值的行为。某些语言可以将其称为 List。它类似于使用增量整数键的数组,但有一些特征除外。
以下是有关序列的一些要点 -
- 值始终可以索引为 [0, 1, 2, ..., size - 1]。
- 仅允许按索引访问 [0, size - 1] 范围内的值。
使用示例
以下是 sequence 的用例 -
- 只要我们可以将数组用作列表(不关心键)。
- SplDoublyLinkedList 和 SplFixedArray 的更高效替代方案。
函数列表
下面是 Sequence 类提供的函数列表 -
函数 | 描述 |
---|---|
Ds\Sequence::allocate() | 为所需的容量分配足够的内存。 |
Ds\Sequence::apply() | 通过对每个值应用回调函数来更新所有值。 |
Ds\Sequence::capacity() | 返回当前容量。 |
Ds\Sequence::contains() | 确定序列是否包含给定值。 |
Ds\Sequence::filter() | 使用 callable 创建新序列以确定要包含的值。 |
Ds\Sequence::find() | 尝试查找值的索引。 |
Ds\Sequence::first() | 返回序列中的第一个值.. |
Ds\Sequence::get() | 返回给定索引处的值。 |
Ds\Sequence::insert() | 在给定索引处插入值。 |
Ds\Sequence::join() | 将所有值作为字符串连接在一起。 |
Ds\Sequence::last() | 返回最后一个值。 |
Ds\Sequence::map() | 返回对每个值应用回调的结果。 |
Ds\Sequence::merge() | 返回将所有给定值添加到序列的结果。 |
Ds\Sequence::pop() | 删除并返回最后一个值。 |
Ds\Sequence::push() | 将值添加到序列的末尾。 |
Ds\Sequence::reduce() | 使用回调函数将序列减少为单个值。 |
Ds\Sequence::remove() | 按索引删除并返回一个值。 |
Ds\Sequence::reverse() | 就地反转序列。 |
Ds\Sequence::reversed() | 返回反向副本。 |
Ds\Sequence::rotate() | 按给定的旋转次数旋转序列。 |
Ds\Sequence::set() | 更新给定索引处的值。 |
Ds\Sequence::shift() | 删除并返回第一个值。 |
Ds\Sequence::slice() | 返回给定范围的子序列。 |
Ds\Sequence::sort() | 就地对序列进行排序。 |
Ds\Sequence::sorted() | 返回已排序的副本。 |
Ds\Sequence::sum() | 返回序列中所有值的总和。 |
Ds\Sequence::unshift() | 将值添加到序列的前面。 |