English | 简体中文 | 繁體中文
查询

Ds\Sequence::sort()函数—用法及示例

「 对当前序列进行排序 」


函数:Ds\Sequence::sort()

适用版本:Ds extension 1.2.0 或更高版本

用法: Ds\Sequence::sort() 函数用于对当前序列进行排序。排序是在原序列的基础上进行的,不会创建新的序列。

语法: public function sort(callable $comparator = null): void

参数:

  1. $comparator(可选):排序比较器函数。它接受两个参数,分别代表两个元素,返回一个整数表示它们的相对顺序。如果未提供比较器函数,则默认使用内部的比较逻辑进行排序。

返回值:无返回值。

示例:

// 创建一个新的序列
$sequence = new Ds\Vector([3, 1, 2]);

// 使用默认排序比较器进行排序
$sequence->sort();

print_r($sequence);
/* 输出:
Ds\Vector Object
(
    [0] => 1
    [1] => 2
    [2] => 3
)
*/

// 使用自定义比较器进行排序
$sequence->sort(function ($a, $b) {
    return $b - $a;
});

print_r($sequence);
/* 输出:
Ds\Vector Object
(
    [0] => 3
    [1] => 2
    [2] => 1
)
*/

上述示例中,我们首先创建了一个新的序列 $sequence,并且包含了无序的整数元素。然后,我们调用 $sequence 的 sort() 方法,使用默认排序比较器进行排序。排序后的结果会直接作用于 $sequence。最后,我们再次调用 sort() 方法,并传入一个自定义的比较器函数,用于实现逆序排序。根据示例中的输出结果可以看出,$sequence 中的元素被成功排序。

补充纠错
上一个函数: Ds\Sequence::slice()函数
下一个函数: Ds\Sequence::sum()函数
热门PHP函数
分享链接