首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[函数]Ds\Sequence::sorted()函数—用法及示例

发布于 2025-04-25 09:19:02
0
30

函数:Ds\Sequence::sorted()

适用版本:PHP 7.4 及以上

用法: Ds\Sequence::sorted(callable $comparator = null): Ds\Sequence

该函数用于返回一个经过排序的新的序列,原序列不会受到影响。可选择通过传入一个自定义的比较函数来定义排序规则。

参数:

  1. $comparator(可选):一个可调用的比较函数,用于定义排序规则。如果未提供该参数,则默认按照自然顺序进行排序。

返回值: 返回一个新的排序后的序列。

示例:

$sequence = new Ds\Vector([3, 1, 2]);

// 使用自然顺序排序
$sortedSequence = $sequence->sorted();
print_r($sortedSequence);    // 输出:Ds\Vector Object ([0] => 1, [1] => 2, [2] => 3)

// 使用自定义的比较函数进行排序
$comparator = function($a, $b) {
    return $b <=> $a;    // 降序排序
};

$sortedSequence = $sequence->sorted($comparator);
print_r($sortedSequence);    // 输出:Ds\Vector Object ([0] => 3, [1] => 2, [2] => 1)

在以上示例中,我们首先创建了一个包含无序数据的序列。然后使用sorted()函数对序列进行排序。

在第一个示例中,未提供比较函数,因此按照自然顺序进行升序排序。排序后的序列为[1, 2, 3]。

在第二个示例中,我们定义了一个比较函数用于实现降序排序。排序后的序列为[3, 2, 1]。

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流