Список целых (TM\_Int64List)

> [HTML Version](listofint.html)

Класс TM\_Int64List можно использовать для хранения списка целых чисел. Данный класс обладает следующими свойствами и методами:

| **Метод** | **Описание** |
|------|------|
| function Add(Item: Int64): Integer; | Добавляет целое число Item в список |
| procedure Insert(Index: Integer; Item: Int64); | Добавляет число Item в список в позицию Index |
| procedure Delete(Index: Integer); | Удаляет из списка элемент с указанным индексом |
| function Remove(AValue: Int64): Integer; | Удаляет из списка число Item. Если список содержит несколько таких чисел, то удаляется только первое. Возвращает индекс числа в списке до его удаления или -1, если число не существует в списке. |
| procedure Exchange(Index1, Index2: Integer); | Меняет местами элементы в указанных позициях |
| procedure Move(CurIndex, NewIndex: Integer); | Перемещает число из позиции CurIndex в позицию NewIndex |
| procedure Clear; | Очищает список |
| function First: Int64; | Возвращает первое число из списка. Если список пуст, то будет выдано исключение. |
| function Last: Int64; | Возвращает последнее число из списка. Если список пуст, то будет выдано исключение. |
| function IndexOf(Item: Int64): Integer; | Возвращает индекс числа Item в списке. Возвращает -1, если такого числа нет в списке |




| **Свойство** | **Описание** |
|------|------|
| property Items\[Index: Integer\]: Int64; | Возвращает число с индексом Index из списка. Например myList.Items\[3\] вернет число из списка с индексом 3. Это свойство по-умолчанию, поэтому можно использовать короткую запись, например: myList\[3\]. |
| property Count: Integer; | Возвращает количество чисел в списке |




**Пример использования**

Допустим нам нужно создать список целых чисел, добавлять в него числа и работать с ними. Тогда можно создать новый [глобальный модуль](globalmodule.md) и объявить в нем список:

````
interface  
  
var  
  myList: TM\_Int64List;          // объявляем список с именем myList  
  
implementation  
  
initialization                   // во время запуска проекта  
  myList := TM\_Int64List.Create; // создаём список  
  
finalization                     // во время выключения проекта  
  FreeAndNil(myList);            // \!\!\! обязательно удаляем список  
  
end.

````
Теперь список myList можно использовать в любом скрипте проекта.

**Пример добавления чисел в список**

````
begin  
  myList.Add(250);     // добавляем число 250 в список  
  myList.Add(128000);  // добавляем число 128000 в список  
  myList.Add(1);       // добавляем число 1 в список  
end.

````
**Пример поиска в списке**

````
begin  
  if myList.IndexOf(250) > -1 then  
    Log\_Add('Число 250 есть в списке')  
  else  
    Log\_Add('Число 250 не найдено списке');  
end.

````
**Пример перебора элементов списка**

````
var  
  I: Integer;  
begin  
  // проходим в цикле по всем элементам списка  
  for I := 0 to myList.Count - 1 do  
  begin  
    if myList\[I\] = 250 then   // если очередной элемент списка равен 250, то  
    begin  
      // здесь выполняем какие-то действия  
    end;  
  end;  
end.

````
