📅  最后修改于: 2023-12-03 14:45:11.084000             🧑  作者: Mango
Ds\Sequence 类是一个抽象基类,所有序列类型继承自此类。 序列是一个通用数据类型,可以包含任何类型的数据集合。 序列的基本操作包括添加、删除、合并、迭代和访问子集。
public function allocate(int $capacity): void
为序列分配所需的内存大小。 参数 $capacity
指定分配的容量大小。
public function capacity(): int
获取序列的容量大小。
public function clear(): void
清空序列中的元素。
public function contains(mixed $value): bool
判断序列中是否存在指定的元素 $value
。
public function copy(): Ds\Sequence
复制当前序列并返回一个新的序列。
public function count(): int
获取序列中元素的数量。
public function filter(callable $callback): Ds\Sequence
通过回调函数 $callback
过滤序列中的元素,并返回一个新的序列。
public function find(mixed $value): int|false
查找序列中指定的元素 $value
的位置。 如果未找到元素则返回 false
。
public function first()
获取序列中第一个元素。
public function get(int $index)
根据指定的索引 $index
返回序列中的元素。
public function insert(int $index, mixed $value): void
在序列指定的索引 $index
处插入元素 $value
。
public function join(?string $delimiter = null): string
将序列的所有元素连接为一个字符串,并返回该字符串。 可选参数 $delimiter
指定连接元素时使用的分隔符。
public function last()
获取序列中最后一个元素。
public function map(callable $callback): Ds\Sequence
对序列中的每个元素应用回调函数 $callback
,并返回一个新的序列。
public function merge(mixed ...$values): Ds\Sequence
合并序列和其他序列或数组,并返回一个新的序列。
public function pop()
删除并返回序列中的最后一个元素。
public function push(mixed ...$values): void
在序列的末尾添加一个或多个元素。
public function reduce(callable $callback, mixed $initial = null): mixed
通过回调函数 $callback
逐个对序列中的元素进行操作,并返回一个累加器。 可选参数 $initial
指定累加器的初始值。
public function remove(int $index): void
删除序列中指定的索引 $index
的元素。
public function reverse(): void
颠倒序列中元素的顺序。
public function rotate(int $rotations): void
将序列中的元素向右移动 $rotations
个位置。 如果 $rotations
是负数,则将元素向左移动。
public function set(int $index, mixed $value): void
将序列指定索引 $index
处的元素设置为 $value
。
public function shift()
删除并返回序列中的第一个元素。
public function slice(int $index, ?int $length = null): Ds\Sequence
返回序列中从索引 $index
开始,包含 $length
个元素的子序列。 如果未指定 $length
,则返回从索引 $index
开始到序列末尾的所有元素的子序列。
public function sort(?callable $comparator = null): void
对序列中的元素进行排序。 可选参数 $comparator
指定自定义排序函数。
public function toArray(): array
将序列转换为数组并返回该数组。
public function unshift(mixed ...$values): void
在序列的开头添加一个或多个元素。
public function values(): array
获取序列中所有元素的数组表示形式。
上述是 Ds\Sequence 类的完整方法列表,这些方法可以帮助开发人员更轻松地处理序列中的元素。无论是添加、删除、合并、迭代还是访问子集,都可以使用这些方法来操作其元素。