Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Доска 2 доп.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
73.73 Кб
Скачать

Универсальные коллекции значений

1) Массив

Мас = Новый Массив(); // массив из нуля элементов

Мас = Новый Массив(5); // массив из 5 элементов, каждый из которых равен Неопределено

Мас = Новый Массив(4,6); // массив из четырех элементов, каждый из которых – массив из 6-ти элементов, каждый из которых равен Неопределено

Одномерный:

Мас[3] = <Значение>; // индекс – с нуля

<Переменная> = Мас[2];

Двумерный:

Мас[2][1] = <Значение>;

Мас[2,1] = <Значение>; - НЕЛЬЗЯ!!

Методы:

Мас.Добавить(<Значение>) – в конец массива

Мас.Вставить(<Индекс>, <Значение>) – в необходимую позицию

Мас.Удалить(<Индекс>) – удаление элемента

Мас.Очистить() – очищается весь массив (длина = 0)

Мас.Количество() – число элементов массива

Мас.ВГраница() – последний индекс. Всегда равен Мас.Количество()-1

Мас.Получить(<Индекс>) – аналогично Мас[<Индекс>]

Мас.Установить(<Индекс>, <Значение>) – аналогично Мас[<Индекс>]=<Значение>

Мас[1][2] = Мас[1][2] + 1;

Мас.Получить(1).Установить(2, Мас.Получить(1).Получить(2) + 1);

2) Структура

Структура – ключ и значение

Стр = Новый Структура(); // пустая структура

Стр = Новый Структура(«Поле1»); // структура с полем «Поле1», которому соответствует значение Неопределено

Стр = Новый Структура(«Поле1», Значение1); // структура с полем «Поле1», которому соответствует значение Значение1

Стр = Новый Структура(«Поле1, Поле2»); // структура с полями «Поле1» и «Поле2», которым соответствуют значения Неопределено

Стр = Новый Структура(«Поле1, Поле2», Значение1, Значение2); // структура с полями «Поле1» и «Поле2», которым соответствуют значения Значение1 и Значение2 соответствено.

Обращение:

Стр.Поле1 = <НовоеЗначение>;

Стр[«Поле1»] = <НовоеЗначение>;

Методы:

Стр.Вставить(«Поле3»)

Стр.Вставить(«Поле3», Значение3)

Стр.Количество() – число полей

Стр.Очистить() – Очищает структуру!! Нет больше полей(((

Свойство():

Буфер = Неопределено;

Если Стр.Свойство(«Поле4», Буфер) Тогда

Сообщить(«Есть такое поле!»);

КонецЕсли;

Аналог:

Перем Буфер;

Если Стр.Свойство(«Поле4», Буфер) Тогда

Сообщить(«Есть такое поле!»);

КонецЕсли;

Еще вариант:

Если Стр.Свойство(«Поле4») Тогда

Буфер = Стр.Поле4;

КонецЕсли;

Стр.Удалить(<ИмяПоля>) – удаляет поле

3) Соответствие

Очень похоже на структуру, только поле – необязательно имя

Соотв = Новый Соответствие();

Соотв.Вставить(Справочники.Валюты.Рубль, «Вот это рубль!»)

Переменная = Соотв[Справочники.Валюты.Рубль];

Переменная = Соотв.Получить(Справочники.Валюты.Рубль);

Методы:

Вставить()

Количество()

Очистить()

Получить()

Удалить()

4) Список значений

Список = Новый СписокЗначений();

Методы:

Вставить(): Список.Вставить(Индекс, Значение, Представление, Картинка, Пометка)

ВыбратьЭлемент() – пользователь выбирает элемент списка; возвращается ссылка на строку списка (ЭлементСпискаЗначений)

ВыгрузитьЗначения() – получается массив из значений

Добавить(): Список.Добавить(Значение, Представление, Картинка, Пометка)

ЗагрузитьЗначения() – обратный методу ВыгрузитьЗначений()

ЗаполнитьПометки() – одинаковые пометки у всех элементов

Список.ЗаполнитьПометки(Истина);

Индекс(): Список.Индекс(ЭлементСпискаЗначений)

Количество()- число элементов

НайтиПоЗначению() – возвращается ЭлементСпискаЗначений или Неопределено

НайтиПоИдентификатору() – вообще не понимаю!!!!!!

ОтметитьЭлементы() – пользователь расставляет галочки

Очистить() – это и мне понятно

Получить() – применяется в случаях, когда использование оператора [] невозможно

Сдвинуть():

Список.Сдвинуть(ЭлементСпискаЗначений, Смещение)

Список.Сдвинуть(Индекс, Смещение)

Скопировать() – создает копию (!!!!!!!)

СортироватьПоЗначению():

Список.СортироватьПоЗначению() – по возрастанию

Список.СортироватьПоЗначению(НаправлениеСортировки.УБЫВ) – по убыванию

Список.СортироватьПоЗначению(НаправлениеСортировки.ВОЗР) – по возрастанию

СортироватьПоПредставлению() – аналогично

Удалить(): параметр – ЭлементСпискаЗначений или Индекс