Кортежи в C#.

Кортежи предоставляют удобный способ для работы с набором значений, который был добавлен в версии C# 7.0. Кортеж представляет набор значений, заключенных в круглые скобки:

var tuple = (5, 10);

В отличие от массивов (которые содержат объекты одного типа), кортежи могут содержат объекты самых разных типов. В .NET 4 определены восемь обобщённых классов Tuple и один статический класс Tuple, который служит «фабрикой» кортежей.

Существуют разные обобщённые классы Tuple для поддержки различного количества элементов, например, Tuple<T1> содержит один элемент, Tuple<T1, T2> — два элемента и т.д.

Элементы кортежа доступны через свойства Item1, Item2. Если имеется более восьми элементов, которые нужно включить в кортеж, можно использовать определение класса Tuple с восемью параметрами.

Последний параметр называется TRest, в котором должен передаваться сам кортеж. Поэтому есть возможность создать кортежи с любым количеством параметров. Следующий метод возвращает кортеж из четырёх элементов:

static Tuple tup(int z, string name)
{
  int x = 4 * z;
  float y = (float)(Math.Sqrt(z));
  string s = "Привет, " + name;
  char ch = (char)(name[0]);

  return Tuple.Create(x, y, s, ch);
}

Работать с этим методом можно так:

var t = tup(5, "Марк");
Console.WriteLine("{0} {1} {2} {3}", t.Item3, t.Item1, t.Item2, t.Item4);

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Chinese (Traditional)EnglishJapaneseRussianUkrainian

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: