Кортежи значений

Кортеж значений — это структура данных, которая имеет определенное число и последовательность значений. .NET предоставляет следующие встроенные типы кортежей значений:

  • Структура ValueTuple<T1> представляет кортеж значений с одним элементом.
  • Структура ValueTuple<T1,T2> представляет кортеж значений с двумя элементами.
  • Структура ValueTuple<T1,T2,T3> представляет кортеж значений, имеющий три элемента.
  • Структура ValueTuple<T1,T2,T3,T4> представляет кортеж значений с четырьмя элементами.
  • Структура ValueTuple<T1,T2,T3,T4,T5> представляет кортеж значений с пятью элементами.
  • Структура ValueTuple<T1,T2,T3,T4,T5,T6> представляет кортеж значений с шестью элементами.
  • Структура ValueTuple<T1,T2,T3,T4,T5,T6,T7> представляет кортеж значений, имеющий семь элементов.
  • Структура ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> представляет кортеж значений, имеющий восемь или более элементов.

Типы кортежей значений отличаются от типов кортежей (таких как Tuple<T1,T2>) следующим образом:

  • Они являются структурами (типами значений), а не классами (ссылочными типами).
  • Такие элементы, как Item1 и Item2 являются полями, а не свойствами.
  • Их поля являются изменяемыми, а не только для чтения.

Типы кортежей значений предоставляют реализацию среды выполнения, которая поддерживает кортежи в C# и кортежей структур в F#. Помимо создания экземпляра ValueTuple<T1,T2> с помощью синтаксиса языка, можно вызвать метод фабрики Create .

См. также