0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Помимо обычных методов, массивы содержат большое число методов, работающих с блоками. Возьмем для примера метод sort(). Он умеет сортировать только на основе сравнения значений. Такая сортировка сработает в случае простых массивов из чисел, но окажется бесполезной в большинстве реальных ситуаций, где процесс сортировки может быть хитрым. Пример (реальные значения могут быть другими):</p>
1
<p>Помимо обычных методов, массивы содержат большое число методов, работающих с блоками. Возьмем для примера метод sort(). Он умеет сортировать только на основе сравнения значений. Такая сортировка сработает в случае простых массивов из чисел, но окажется бесполезной в большинстве реальных ситуаций, где процесс сортировки может быть хитрым. Пример (реальные значения могут быть другими):</p>
2
<p>Как отсортировать страны по количеству жителей в них? Для таких ситуаций и нужны функции высшего порядка:</p>
2
<p>Как отсортировать страны по количеству жителей в них? Для таких ситуаций и нужны функции высшего порядка:</p>
3
<p>Метод sort_by() ожидает, что из блока вернётся значение, по которому нужно выполнить сортировку. Затем, когда значения собраны, этот метод выполняет сортировку, сравнивая значения с помощью оператора <=>.</p>
3
<p>Метод sort_by() ожидает, что из блока вернётся значение, по которому нужно выполнить сортировку. Затем, когда значения собраны, этот метод выполняет сортировку, сравнивая значения с помощью оператора <=>.</p>
4
<p>Вот некоторые примеры подобных функций:</p>
4
<p>Вот некоторые примеры подобных функций:</p>
5
<ul><li><a>max_by()</a>- поиск максимального по указанному параметру в массиве</li>
5
<ul><li><a>max_by()</a>- поиск максимального по указанному параметру в массиве</li>
6
<li><a>partition()</a>- разделяет массив на два по указанному условию</li>
6
<li><a>partition()</a>- разделяет массив на два по указанному условию</li>
7
</ul><p>Таких функций у массивов десятки. Единственный способ их запомнить - постоянно практиковаться и читать документацию.</p>
7
</ul><p>Таких функций у массивов десятки. Единственный способ их запомнить - постоянно практиковаться и читать документацию.</p>