Кортеж
Кортеж задают круглыми скобками с перечислением
типов, например (int, string). Литерал
записывают как (5, "abcde"). Поля
доступны как Item1, Item2
или через имена при объявлении.
Синтаксис
(тип1, тип2) имя;
Пример
Давайте создадим кортеж из числа и строки:
using System;
class Program
{
static void Main()
{
var pair = (5, "abcde");
Console.WriteLine(pair.Item2);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте назовём поля кортежа при создании:
using System;
class Program
{
static void Main()
{
var item = (Num: 5, Name: "abcde");
Console.WriteLine(item.Num);
}
}
Результат выполнения кода:
5
Пример
Давайте вернём кортеж из метода:
using System;
class Program
{
static void Main()
{
var res = MakePair();
Console.WriteLine(res.Item1 + res.Item2);
}
static (int, int) MakePair()
{
return (2, 3);
}
}
Результат выполнения кода:
5
Пример
Давайте сравним два кортежа с одинаковыми полями:
using System;
class Program
{
static void Main()
{
var a = (1, "abcde");
var b = (1, "abcde");
Console.WriteLine(a == b);
}
}
Результат выполнения кода:
True