Как получить заказанный набор в OCL?
Когда у меня есть результат типа Set(Integer)
, номера не упорядочены. У нас есть операция для коллекций sortedBy ( expr : OclExpression ) : Sequence(T)
, но когда в этом наборе есть только целые числа, какое выражение использовать?
1 ответ
Решение
Вы можете просто использовать операцию asOrderedSet (если ваша коллекция находится в переменной X, тогда это будет X->asOrderedSet())
Из стандарта OCL asOrderedSet(): OrderedSet(T) OrderedSet, который содержит все элементы из self с удаленными дубликатами, в порядке, зависящем от конкретного конкретного типа коллекции.