Set (class)
Set类
介绍
(没有可用的版本信息,可能只在Git中)
Set是一系列唯一值。此实现使用与Ds \ Map
相同的散列表,其中值用作键,并忽略映射的值。
优势
- 值可以是任何类型,包括对象。
- 支持数组语法(方括号)。
- 插入顺序被保留。
- 当大小下降得足够小时,自动释放分配的内存。
add()
,remove()
andcontains()
are all O(1).
弱点
- 不支持
push()
,pop()
,insert()
,shift()
或unshift()
。
- 如果在访问的索引之前存在删除的值,则
get()
为O(n),否则为O(1)。
类简介
Ds\Set
implements Ds\Collection
{
/ *常量* /
const int MIN_CAPACITY = 16 ;
/* 方法 */
public void add ([ mixed $...values ] )
public void allocate ( int $capacity )
public int capacity ( void )
public void clear ( void )
public bool contains ([ mixed $...values ] )
public Ds\Set copy ( void )
public Ds\Set diff ( Ds\Set $set )
public Ds\Set filter ([ callable $callback ] )
public void first ( void )
public mixed get ( int $index )
public Ds\Set intersect ( Ds\Set $set )
public bool isEmpty ( void )
public string join ([ string $glue ] )
public void last ( void )
public Ds\Set merge ( mixed $values )
public mixed reduce ( callable $callback [, mixed $initial ] )
public void remove ([ mixed $...values ] )
public void reverse ( void )
public Ds\Set reversed ( void )
public Ds\Set slice ( int $index [, int $length ] )
public void sort ([ callable $comparator ] )
public Ds\Set sorted ([ callable $comparator ] )
public number sum ( void )
public array toArray ( void )
public Ds\Set union ( Ds\Set $set )
public Ds\Set xor ( Ds\Set $set )
}
预定义的常量
Ds\Set::MIN_CAPACITY
目录
- Ds \ Set :: add - 将值添加到集合中。
- Ds \ Set :: allocate - 为所需容量分配足够的内存。
- Ds \ Set :: capacity - 返回当前容量。
- Ds \ Set :: clear - 删除所有值。
- Ds \ Set :: __ construct - 创建一个新实例。
- Ds \ Set :: contains - 确定集合是否包含所有值。
- Ds \ Set :: copy - 返回集合的浅表副本。
- Ds \ Set :: count - 返回集合中的值的数量。
- Ds \ Set :: diff - 使用不在另一个集合中的值创建一个新集合。
- Ds \ Set :: filter - 使用callable创建一个新集以确定包含哪些值。
- Ds \ Set :: first - 返回集合中的第一个值。
- Ds \ Set :: get - 返回给定索引处的值。
- Ds \ Set :: intersect - 通过与另一个集合相交的值创建一个新集。
- Ds \ Set :: isEmpty - 返回该集是否为空
- Ds \ Set :: join - 将所有值连接为一个字符串。
- Ds \ Set :: jsonSerialize - 返回可以转换为JSON的表示。
- Ds \ Set :: last - 返回集合中的最后一个值。
- Ds \ Set :: merge - 返回将所有给定值添加到集合的结果。
- Ds \ Set :: reduce - 使用回调函数将设置减少为单个值。
- Ds \ Set :: remove - 从集合中删除所有给定的值。
- Ds \ Set :: reverse - 在原地颠倒Set。
- Ds \ Set :: reversed - 返回一个反转的副本。
- Ds \ Set :: slice - 返回给定范围的子集。
- Ds \ Set :: sort - 就地排序集合。
- Ds \ Set :: sorted - 返回一个排序后的副本。
- Ds \ Set :: sum - 返回集合中所有值的总和。
- Ds \ Set :: toArray - 将集合转换为数组。
- Ds \ Set :: union - 使用当前实例和另一个集合中的值创建一个新集合。
- Ds \ Set :: xor - 使用当前实例或另一个集合中的值创建一个新集合,但不是同时在这两个集合中创建一个新集合。
← Ds\Pair::toArray
Ds\Set::add →