Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Операция reject




Читайте также:
  1. V2: Раздел 2. Операция удаления зуба
  2. Аксиомы об операциях над зельями
  3. В операциях по разгрому противника под Ленинградом
  4. Висло-Одерская операция
  5. Висло-Одерская операция
  6. Висло-Одерская операция, Восточно-Прусская операция (1945).
  7. Висло-одерская операция.
  8. Восточно-Прусская операция
  9. Документальное оформление расчетов с подотчетными лицами, с персоналом по прочим операциям, синтетический и аналитический учет.
  10. Документы по платежно-банковским внешнеторговым операциям

Операция reject отбирает в выходную коллекцию только те объекты, которые не удовлетворяют заданному условию. По смыслу она противоположна операции select. В примере:

Computer.allInstances->reject(Memory < 512)

будет получен тот же результат, что и при использовании выражения:

Computer.allInstances->select (Memory >= 512)

Выделение элементов коллекции

Для получения первого элемента в коллекции применяется операция First. Для получения последнего элемента в коллекции применяется операция Last. Выделение объекта по его номеру в коллекции выполняет операция At — номер нужного объекта задается в качестве параметра (нумерация начинается с единицы).

Например, следующее выражение получает последний элемент из коллекции компьютеров:

Computer.allInstances->last

Получить название (свойство Name) процессора (свойство Processor) первого элемента текущей коллекции компьютеров можно следующим образом:

Computer.allInstances->first.Processor.Name

Получить объект, представляющий мышь пятого компьютера текущего набора можно следующим образом:

Computer.allInstances->At(5).Mouse

Упорядочение набора

Применение операций выделения первого и последнего элементов не всегда имеет смысл, если исходная коллекция не упорядочена. Упорядочение наборов данных производится операциями OrderBy и OrderDescending. Они выполняют сортировку по заданному параметру, причем операция OrderDescending выполняет сортировку «в порядке убывания» — способом, противоположным Order By. Конкретный способ сортировки коллекций с помощью операции OrderBy определяется реализацией.

Например, отсортируем набор объектов-компьютеров по именам:

Computer.allInstances->OrderBy(Name)

Логические итераторы

Проверка выполнения логического условия для всех элементов коллекции осуществляется с помощью итератора ForAll. Пусть, например, в классе Computer имеется свойство Mouse (отдельный класс), а у него, в свою очередь, имеется логическое свойство isMiddleButton (наличие средней кнопки мыши). Тогда выражение:

Computer.allInstances->ForAll(Mouse.IsMiddleButton) вернет значение True, если все без исключения компьютеры коллекции оснащены трехкнопочными мышами.



Итератор Exists, схожий по смыслу с итератором ForAll, возвращает значение True, если хотя бы один из элементов коллекции соответствует заданному условию:

Computer.allInstances->Exists(Mouse.IsMiddleButton)


Дата добавления: 2015-04-04; просмотров: 13; Нарушение авторских прав







lektsii.com - Лекции.Ком - 2014-2021 год. (0.016 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты