Методы приведены для последовательности sequence of T
.
function Single(): T;
Возвращает единственный элемент последовательности и генерирует исключение, если число элементов последовательности отлично от 1. |
function Single(predicate: T->boolean): T;
Возвращает единственный элемент последовательности, удовлетворяющий заданному условию, и генерирует исключение, если таких элементов больше одного. |
function SingleOrDefault(): T;
Возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; если в последовательности более одного элемента, генерируется исключение. |
function SingleOrDefault(predicate: T->boolean): T;
Возвращает единственный элемент последовательности, удовлетворяющий заданному условию, или значение по умолчанию, если такого элемента не существует; если условию удовлетворяет более одного элемента, генерируется исключение. |
begin
var
a := Arr(1,2,3,4);
Println(a.Single); // исключение
Println(a.Single(x -> x>3); // 4
Println(a.SingleOrDefault(x ->
x>5); // 0
end.