Table.Sort

Table.Sort ( table SourceTable,
function Compare = nil )
Примеры

Описание

Сортирует пункты численно индексированной таблицы.

Параметры

SourceTable

(таблица) Таблица для сортировки.

Compare

(функция) Функция дополнительного сравнения, используемая при сортировке таблицы. Функция должна сравнивать два значения и возвращать истину (true), если два пункта уже отсортированы, или ложь (false), если пункты нужно поменять местами. Если функция не указана, для сортировки пунктов будет использован оператор "меньше чем" (<).

Возврат

Ничего.
Смотрите также: Связанные действия

Примеры

Пример 1

Debug.ShowWindow(true);
MyTable = {46, 102, 12, 85};
Table.Sort(MyTable, nil)
for x, y in pairs(MyTable) do
    Debug.Print(y .. "\r\n");
end
Сортирует пункты таблицы "MyTable" в порядке возрастания и затем печатает отсортированную таблицу в окне отладки.
Вот что будет напечатано в окне отладки:
12
46
85
102

Пример 2

function sorter(v1, v2)
    if (v1 > v2)then
        return true;
    else
        return false;
    end
end

Debug.ShowWindow(true);
MyTable = {"Hockey", "Baseball", "Football", "Soccer"};
Table.Sort(MyTable, sorter);
for x, y in pairs(MyTable) do
    Debug.Print(y .. "\r\n");
end
Первый блок кода определяет функцию "sorter", которая сравнивает два значения и возвращает истину (true), если первый пункт больше чем второй. Затем функция "sorter" используется в действии Table.Sort для сортировки пунктов в нисходящем (убывающем) алфавитном порядке (z - a).
Вот что будет напечатано в окне отладки:
Soccer
Hockey
Football
Baseball
Смотрите также: Связанные действия