函式名:Ds\Deque::reduce()
適用版本:PHP 7.2或更高版本
用法:該函式用於將Deque中的元素逐個應用到回撥函式上,並返回一個累積的結果。
語法:public function reduce(callable $callback, $initial = null)
引數:
- $callback:必需引數,一個回撥函式,接受兩個引數。第一個引數是前一次呼叫的結果,第二個引數是當前迭代的元素。
- $initial:可選引數,用於設定初始值。
返回值:返回最終的累積結果。
示例:
$deque = new Ds\Deque([1, 2, 3, 4, 5]);
// 示例 1: 累加所有元素
$sum = $deque->reduce(function($carry, $item) {
return $carry + $item;
});
echo $sum; // 輸出: 15
// 示例 2: 透過指定初始值累加所有元素
$sum = $deque->reduce(function($carry, $item) {
return $carry + $item;
}, 10);
echo $sum; // 輸出: 25
注意:本示例中,我們使用了Ds\Deque類來建立一個Deque物件,並傳入一組初始元素。然後,我們使用reduce()方法來對Deque中的元素進行累加操作。在示例1中,我們沒有指定初始值,因此從第一個元素開始進行累加操作。在示例2中,我們透過指定初始值為10,從第一個元素加上初始值開始進行累加操作。最終,我們得到了累加的結果輸出。