Programming Taskbook 0
Download 1.62 Mb. Pdf ko'rish
|
Abramyan-Pascal2016-1
Преобразование
Методы array of T ConvertAll(conv: T -> TRes): array of TRes Shuffle: array of T Replace(oldValue, newValue: T) Sort([comp: (T, T) -> integer]) Transform(func: T -> T) Функция ConvertAll применяет к каждому элементу e исходного масси- ва преобразование conv(e) (переданное в качестве параметра — лямбда- выражения) и возвращает новый массив, содержащий преобразованные элементы. Преобразование conv может, в частности, изменять тип элемен- тов. Исходный массив не изменяется. Функция Shuffle изменяет случайным образом порядок элементов ис- ходного массива. Она не только изменяет исходный массив, но и возвра- щает ссылку на него. Процедура Replace заменяет в исходном массиве все элементы со зна- чением oldValue, присваивая им новое значение newValue. Процедура Sort сортирует исходный массив. Если она вызывается без параметров, то массив сортируется по возрастанию значений его элемен- тов (в этом случае необходимо, чтобы элементы можно было сравнивать операциями «меньше»–«больше»). Необязательный параметр comp позво- ляет задать способ сортировки, определяя отношение сравнения для эле- ментов массива: если значение а меньше значения b, то comp(a, b) должно возвращать отрицательное число, если a равно b, то comp(a, b) должно воз- вращать 0, если a больше b, то comp(a, b) должно возвращать положитель- ное число. Вариант процедуры Sort с параметром comp можно вызывать для любых массивов, в том числе и тех, для элементов которых не определены стандартные операции сравнения «меньше»-«больше». Процедура Transform(func) преобразует исходный массив, применяя к каждому его элементу лямбда-выражение func. Поскольку изменяется сам исходный массив, преобразование func(e) должно возвращать значение, тип которого совпадает с типом параметра e (в этом состоит одно из отличий процедуры Transform от ранее рассмотренной функции ConvertAll). |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling